All of lore.kernel.org
 help / color / mirror / Atom feed
* Unable to find an usable access for 'default'
@ 2007-07-03 22:19 Timur Tabi
  2007-07-04  6:34 ` Clemens Ladisch
  0 siblings, 1 reply; 8+ messages in thread
From: Timur Tabi @ 2007-07-03 22:19 UTC (permalink / raw)
  To: alsa-devel

I'm developing a new ASOC driver, and I get this error message:

ALSA lib pcm_plug.c:729:(snd_pcm_plug_hw_refine_schange) Unable to find an usable access 
for 'default'

Can someone tell me what this means?

FYI, I'm in the early stages of testing my driver, and before I started I knew nothing 
about ALSA.  This is on an embedded system, so I don't know if my ALSA installation is 
correct.  Am I missing some kind of configuration file?

-- 
Timur Tabi
Linux Kernel Developer @ Freescale

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Unable to find an usable access for 'default'
  2007-07-03 22:19 Unable to find an usable access for 'default' Timur Tabi
@ 2007-07-04  6:34 ` Clemens Ladisch
  2007-07-05 12:44   ` Timur Tabi
  0 siblings, 1 reply; 8+ messages in thread
From: Clemens Ladisch @ 2007-07-04  6:34 UTC (permalink / raw)
  To: Timur Tabi, alsa-devel

Timur Tabi wrote:
> I'm developing a new ASOC driver, and I get this error message:
> 
> ALSA lib pcm_plug.c:729:(snd_pcm_plug_hw_refine_schange) Unable to find an usable access for 'default'
> 
> Can someone tell me what this means?

It means that the plug plugin (that the ALSA lib uses to automatically
convert between sample formats) was not able to find any combination of
format/rate/channels/access that would work with your hardware.

It is possible that some entries in the snd_pcm_hardware struct are set
in an inconsistent way.  Please show the code of the driver.

> This is on an embedded system, so I don't know if my ALSA installation is 
> correct.  Am I missing some kind of configuration file?

No, when the plug plugin being executed means that the configuration
files for this have been found.


Regards,
Clemens

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Unable to find an usable access for 'default'
  2007-07-04  6:34 ` Clemens Ladisch
@ 2007-07-05 12:44   ` Timur Tabi
  2007-07-06 10:50     ` Clemens Ladisch
  0 siblings, 1 reply; 8+ messages in thread
From: Timur Tabi @ 2007-07-05 12:44 UTC (permalink / raw)
  To: Clemens Ladisch; +Cc: alsa-devel

Clemens Ladisch wrote:

> It means that the plug plugin (that the ALSA lib uses to automatically
> convert between sample formats) was not able to find any combination of
> format/rate/channels/access that would work with your hardware.

Yes, I'm currently debugging that code, so that makes sense.  When you say "access", what do you mean by that?

> It is possible that some entries in the snd_pcm_hardware struct are set
> in an inconsistent way.  Please show the code of the driver.

I'd like to show the code, but the project is unannounced, so I can't yet.  Can you give me a suggestion as to what I should be looking for to resolve this?

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Unable to find an usable access for 'default'
  2007-07-05 12:44   ` Timur Tabi
@ 2007-07-06 10:50     ` Clemens Ladisch
  2007-07-06 22:32       ` Timur Tabi
  0 siblings, 1 reply; 8+ messages in thread
From: Clemens Ladisch @ 2007-07-06 10:50 UTC (permalink / raw)
  To: Timur Tabi; +Cc: alsa-devel

Timur Tabi wrote:
> Clemens Ladisch wrote:
> > It means that the plug plugin (that the ALSA lib uses to automatically
> > convert between sample formats) was not able to find any combination of
> > format/rate/channels/access that would work with your hardware.
> 
> ... When you say "access", what do you mean by that?

ALSA-lib's access type specifies whether to use mmap or not, and whether
the sample are interleaved or not.  (The SNDRV_PCM_INFO_*INTERLEAVED and
SNDRV_PCM_INFO_MMAP* flags specify the capabilities of the device.)

> > It is possible that some entries in the snd_pcm_hardware struct are set
> > in an inconsistent way.  Please show the code of the driver.
> 
> I'd like to show the code, but the project is unannounced, so I can't
> yet.  Can you give me a suggestion as to what I should be looking for to
> resolve this?

Look at the values in the snd_pcm_hardware structure and at the
constraints the driver adds manually, if there are any.


HTH
Clemens

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Unable to find an usable access for 'default'
  2007-07-06 10:50     ` Clemens Ladisch
@ 2007-07-06 22:32       ` Timur Tabi
  2007-07-09  6:51         ` Clemens Ladisch
  0 siblings, 1 reply; 8+ messages in thread
From: Timur Tabi @ 2007-07-06 22:32 UTC (permalink / raw)
  To: Clemens Ladisch; +Cc: alsa-devel

Clemens Ladisch wrote:

> ALSA-lib's access type specifies whether to use mmap or not, and whether
> the sample are interleaved or not.  (The SNDRV_PCM_INFO_*INTERLEAVED and
> SNDRV_PCM_INFO_MMAP* flags specify the capabilities of the device.)

Is mmap support ever required?  I don't have that support turned on in my PCM driver, so 
could that cause some ALSA applications to fail to match?

> Look at the values in the snd_pcm_hardware structure and at the
> constraints the driver adds manually, if there are any.

Ok, I think I fixed some issues there, but I'm still having problems.

I think part of the problem is that I'm telling ALSA that I only support these sample 
rates: 192000, 96000, 64000, 48000, 32000, and 16000.  For playback, I'm using alsaplayer 
to play an MP3.  Could it be that alsaplayer is picking a sample rate like 44100 and since 
it doesn't find a match, it's failing?  I thought ALSA always did sample rate conversion. 
  Is that not true?

-- 
Timur Tabi
Linux Kernel Developer @ Freescale

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Unable to find an usable access for 'default'
  2007-07-06 22:32       ` Timur Tabi
@ 2007-07-09  6:51         ` Clemens Ladisch
  2007-07-09 21:02           ` Timur Tabi
  0 siblings, 1 reply; 8+ messages in thread
From: Clemens Ladisch @ 2007-07-09  6:51 UTC (permalink / raw)
  To: Timur Tabi; +Cc: alsa-devel

Timur Tabi wrote:
> Clemens Ladisch wrote:
> > ALSA-lib's access type specifies whether to use mmap or not, and whether
> > the sample are interleaved or not.  (The SNDRV_PCM_INFO_*INTERLEAVED and
> > SNDRV_PCM_INFO_MMAP* flags specify the capabilities of the device.)
> 
> Is mmap support ever required?

No, but the ALSA framework does all mmap stuff for you if it knows what
type of memory you're using for the buffer, i.e., when you're using the
snd_pcm_lib_* memory management functions.

> > Look at the values in the snd_pcm_hardware structure and at the
> > constraints the driver adds manually, if there are any.
> 
> Ok, I think I fixed some issues there, but I'm still having problems.
> 
> I think part of the problem is that I'm telling ALSA that I only support
> these sample rates: 192000, 96000, 64000, 48000, 32000, and 16000.  For
> playback, I'm using alsaplayer to play an MP3.  Could it be that
> alsaplayer is picking a sample rate like 44100 and since it doesn't find
> a match, it's failing?

This is possible.  Try using aplay with a .wav file that uses a sample
format supported by the hardware.

> I thought ALSA always did sample rate conversion. 

It does when using the "default" device, but it's possible that
alsaplayer tries to use some "hw" device that does not.


HTH
Clemens

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Unable to find an usable access for 'default'
  2007-07-09  6:51         ` Clemens Ladisch
@ 2007-07-09 21:02           ` Timur Tabi
  2007-07-10  6:29             ` Clemens Ladisch
  0 siblings, 1 reply; 8+ messages in thread
From: Timur Tabi @ 2007-07-09 21:02 UTC (permalink / raw)
  To: Clemens Ladisch; +Cc: alsa-devel

Clemens Ladisch wrote:

> This is possible.  Try using aplay with a .wav file that uses a sample
> format supported by the hardware.

I tried that, and I'm still having problems.  Here's the output with rule debugging turned 
on.  I can't make sense of this, so could you interpret this for me?

mpc86xx_i2s_startup name=subdevice #0
mpc86xx_pcm_open
mpc86xx_machine_startup
cs4270_set_dai_sysclk: clk_id=0 freq=12288000 dir=0
cs4270_set_dai_sysclk: found rate 192000
cs4270_set_dai_sysclk: found rate 96000
cs4270_set_dai_sysclk: found rate 64000
cs4270_set_dai_sysclk: found rate 48000
cs4270_set_dai_sysclk: found rate 32000
cs4270_set_dai_sysclk: found rate 16000
cs4270_set_dai_sysclk: min=16000 max=192000 rates=15a8
asoc: CS4270 <-> mpc86xx info:
asoc: rate mask 0xa8
asoc: min ch 1 max ch 2
asoc: min rate 16000 max rate 48000
ACCESS = 00000000ffffffffffffffff -> 0000000000000009
FORMAT = 00000000ffffffffffffffff -> 0000000000000080
SUBFORMAT = 00000000ffffffffffffffff -> 0000000000000001
SAMPLE_BITS = [0 4294967295] -> [0 4294967295]
FRAME_BITS = [0 4294967295] -> [0 4294967295]
CHANNELS = [0 4294967295] -> [1 2]
RATE = [0 4294967295] -> [16000 48000]
PERIOD_TIME = [0 4294967295] -> [0 4294967295]
PERIOD_SIZE = [0 4294967295] -> [0 4294967295]
PERIOD_BYTES = [0 4294967295] -> [32 4294967295]
PERIODS = [0 4294967295] -> [2 4294967295]
BUFFER_TIME = [0 4294967295] -> [0 4294967295]
BUFFER_SIZE = [0 4294967295] -> [0 4294967295]
BUFFER_BYTES = [0 4294967295] -> [32 4294967295]
TICK_TIME = [0 4294967295] -> [1000 1000]
Rule 0 [c01b4c2c]: FORMAT = 80 -> 80
Rule 1 [c01b4884]: SAMPLE_BITS = [0 4294967295] -> [32 32]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 3 [c01b4a98]: FRAME_BITS = [0 4294967295] -> [32 64]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 6 [c01b4a14]: CHANNELS = [1 2] -> [1 2]
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 8 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 9 [c01b4a14]: PERIODS = [2 4294967295] -> [2 4294967295]
Rule 10 [c01b4a14]: PERIOD_SIZE = [0 4294967295] -> [0 2147483647]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [0 2147483647] -> [4 1073741823]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 1073741823] -> [4 206158430]
Rule 13 [c01b4a98]: BUFFER_SIZE = [0 4294967295] -> [8 4294967295]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 4294967295] -> [8 1073741823]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 1073741823] -> [8 206158430]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 4294967295] -> [32 1649267440]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 4294967295] -> [32 1649267440]
Rule 18 [c01b4b1c]: PERIOD_TIME = [0 4294967295] -> (83 4294967295]
Rule 19 [c01b4b1c]: BUFFER_TIME = [0 4294967295] -> (166 4294967295]
Rule 20 [c01b4968]: BUFFER_BYTES = [32 1649267440] -> [32 1649267440]
Rule 21 [c01b49c8]: RATE = [16000 48000] -> [16000 48000]
Rule 0 [c01b4c2c]: FORMAT = 80 -> 80
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 8 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 9 [c01b4a14]: PERIODS = [2 4294967295] -> [2 51539607]
Rule 10 [c01b4a14]: PERIOD_SIZE = [4 206158430] -> [4 103079215]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 1649267440] -> [32 824633720]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> (83 4294967295]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 9 [c01b4a14]: PERIODS = [2 51539607] -> [2 51539607]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
RATE = [16000 16000] -> [16000 16000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 68719476]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 68719476]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 824633720] -> [32 549755808]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 1649267440] -> [32 549755808]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> [250 4294967250]
Rule 19 [c01b4b1c]: BUFFER_TIME = (166 4294967295] -> [500 4294967250]
Rule 20 [c01b4968]: BUFFER_BYTES = [32 549755808] -> [32 549755808]
Rule 21 [c01b49c8]: RATE = [16000 16000] -> [16000 16000]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 16000] -> [16000 16000]
Rule 8 [c01b4b1c]: RATE = [16000 16000] -> [16000 16000]
Rule 9 [c01b4a14]: PERIODS = [2 51539607] -> [2 17179869]
Rule 10 [c01b4a14]: PERIOD_SIZE = [4 68719476] -> [4 34359738]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 68719476] -> [8 68719476]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 68719476] -> [8 68719476]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 68719476] -> [8 68719476]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 549755808] -> [32 274877904]
Rule 18 [c01b4b1c]: PERIOD_TIME = [250 4294967250] -> [250 2147483625]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 16000] -> [16000 16000]
Rule 9 [c01b4a14]: PERIODS = [2 17179869] -> [2 17179869]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
RATE = [48000 48000] -> [48000 48000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> (83 2147483646)
Rule 19 [c01b4b1c]: BUFFER_TIME = (166 4294967295] -> (166 4294967292)
Rule 21 [c01b49c8]: RATE = [48000 48000] -> [48000 48000]
Rule 7 [c01b4b1c]: RATE = [48000 48000] -> [48000 48000]
Rule 8 [c01b4b1c]: RATE = [48000 48000] -> [48000 48000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
CHANNELS = [1 4294967295] -> [1 2]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 3 [c01b4a98]: FRAME_BITS = [32 64] -> [32 64]
CHANNELS = [1 1] -> [1 1]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 3 [c01b4a98]: FRAME_BITS = [32 64] -> [32 32]
Rule 6 [c01b4a14]: CHANNELS = [1 1] -> [1 1]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 103079215] -> [8 103079215]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 206158430] -> [16 206158430]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 824633720] -> [32 412316860]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 1649267440] -> [64 824633720]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> (166 4294967295]
Rule 19 [c01b4b1c]: BUFFER_TIME = (166 4294967295] -> (333 4294967295]
Rule 20 [c01b4968]: BUFFER_BYTES = [64 824633720] -> [64 824633720]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 32] -> [32 32]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 32] -> [32 32]
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 8 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 9 [c01b4a14]: PERIODS = [2 51539607] -> [2 25769803]
Rule 10 [c01b4a14]: PERIOD_SIZE = [8 103079215] -> [8 103079215]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [8 103079215] -> [8 103079215]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [8 103079215] -> [8 103079215]
Rule 13 [c01b4a98]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
CHANNELS = [2 2] -> [2 2]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 3 [c01b4a98]: FRAME_BITS = [32 64] -> [64 64]
Rule 6 [c01b4a14]: CHANNELS = [2 2] -> [2 2]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 824633720] -> [32 824633720]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 1649267440] -> [64 1649267440]
Rule 20 [c01b4968]: BUFFER_BYTES = [64 1649267440] -> [64 1649267440]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 5 [c01b4b1c]: FRAME_BITS = [64 64] -> [64 64]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
RATE = [16000 16000] -> [16000 16000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 68719476]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 68719476]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 824633720] -> [32 549755808]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 1649267440] -> [32 549755808]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> [250 4294967250]
Rule 19 [c01b4b1c]: BUFFER_TIME = (166 4294967295] -> [500 4294967250]
Rule 20 [c01b4968]: BUFFER_BYTES = [32 549755808] -> [32 549755808]
Rule 21 [c01b49c8]: RATE = [16000 16000] -> [16000 16000]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 16000] -> [16000 16000]
Rule 8 [c01b4b1c]: RATE = [16000 16000] -> [16000 16000]
Rule 9 [c01b4a14]: PERIODS = [2 51539607] -> [2 17179869]
Rule 10 [c01b4a14]: PERIOD_SIZE = [4 68719476] -> [4 34359738]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 68719476] -> [8 68719476]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 68719476] -> [8 68719476]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 68719476] -> [8 68719476]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 549755808] -> [32 274877904]
Rule 18 [c01b4b1c]: PERIOD_TIME = [250 4294967250] -> [250 2147483625]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 16000] -> [16000 16000]
Rule 9 [c01b4a14]: PERIODS = [2 17179869] -> [2 17179869]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
RATE = [48000 48000] -> [48000 48000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> (83 2147483646)
Rule 19 [c01b4b1c]: BUFFER_TIME = (166 4294967295] -> (166 4294967292)
Rule 21 [c01b49c8]: RATE = [48000 48000] -> [48000 48000]
Rule 7 [c01b4b1c]: RATE = [48000 48000] -> [48000 48000]
Rule 8 [c01b4b1c]: RATE = [48000 48000] -> [48000 48000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
CHANNELS = [1 1] -> [1 1]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 3 [c01b4a98]: FRAME_BITS = [32 64] -> [32 32]
Rule 6 [c01b4a14]: CHANNELS = [1 1] -> [1 1]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 103079215] -> [8 103079215]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 206158430] -> [16 206158430]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 824633720] -> [32 412316860]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 1649267440] -> [64 824633720]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> (166 4294967295]
Rule 19 [c01b4b1c]: BUFFER_TIME = (166 4294967295] -> (333 4294967295]
Rule 20 [c01b4968]: BUFFER_BYTES = [64 824633720] -> [64 824633720]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 32] -> [32 32]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 32] -> [32 32]
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 8 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 9 [c01b4a14]: PERIODS = [2 51539607] -> [2 25769803]
Rule 10 [c01b4a14]: PERIOD_SIZE = [8 103079215] -> [8 103079215]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [8 103079215] -> [8 103079215]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [8 103079215] -> [8 103079215]
Rule 13 [c01b4a98]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
CHANNELS = [2 2] -> [2 2]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 3 [c01b4a98]: FRAME_BITS = [32 64] -> [64 64]
Rule 6 [c01b4a14]: CHANNELS = [2 2] -> [2 2]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 824633720] -> [32 824633720]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 1649267440] -> [64 1649267440]
Rule 20 [c01b4968]: BUFFER_BYTES = [64 1649267440] -> [64 1649267440]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 5 [c01b4b1c]: FRAME_BITS = [64 64] -> [64 64]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
PERIOD_TIME = (83 4294967295) -> (83 4294967295)
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
ACCESS = 00000000ffffffffffffffff -> 0000000000000009
FORMAT = 00000000ffffffffffffffff -> 0000000000000080
SUBFORMAT = 00000000ffffffffffffffff -> 0000000000000001
SAMPLE_BITS = [0 4294967295] -> [0 4294967295]
FRAME_BITS = [0 4294967295] -> [0 4294967295]
CHANNELS = [0 4294967295] -> [1 2]
RATE = [0 4294967295] -> [16000 48000]
PERIOD_TIME = [0 4294967295] -> [0 4294967295]
PERIOD_SIZE = [0 4294967295] -> [0 4294967295]
PERIOD_BYTES = [0 4294967295] -> [32 4294967295]
PERIODS = [0 4294967295] -> [2 4294967295]
BUFFER_TIME = [0 4294967295] -> [0 4294967295]
BUFFER_SIZE = [0 4294967295] -> [0 4294967295]
BUFFER_BYTES = [0 4294967295] -> [32 4294967295]
TICK_TIME = [0 4294967295] -> [1000 1000]
Rule 0 [c01b4c2c]: FORMAT = 80 -> 80
Rule 1 [c01b4884]: SAMPLE_BITS = [0 4294967295] -> [32 32]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 3 [c01b4a98]: FRAME_BITS = [0 4294967295] -> [32 64]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 6 [c01b4a14]: CHANNELS = [1 2] -> [1 2]
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 8 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 9 [c01b4a14]: PERIODS = [2 4294967295] -> [2 4294967295]
Rule 10 [c01b4a14]: PERIOD_SIZE = [0 4294967295] -> [0 2147483647]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [0 2147483647] -> [4 1073741823]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 1073741823] -> [4 206158430]
Rule 13 [c01b4a98]: BUFFER_SIZE = [0 4294967295] -> [8 4294967295]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 4294967295] -> [8 1073741823]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 1073741823] -> [8 206158430]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 4294967295] -> [32 1649267440]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 4294967295] -> [32 1649267440]
Rule 18 [c01b4b1c]: PERIOD_TIME = [0 4294967295] -> (83 4294967295]
Rule 19 [c01b4b1c]: BUFFER_TIME = [0 4294967295] -> (166 4294967295]
Rule 20 [c01b4968]: BUFFER_BYTES = [32 1649267440] -> [32 1649267440]
Rule 21 [c01b49c8]: RATE = [16000 48000] -> [16000 48000]
Rule 0 [c01b4c2c]: FORMAT = 80 -> 80
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 8 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 9 [c01b4a14]: PERIODS = [2 4294967295] -> [2 51539607]
Rule 10 [c01b4a14]: PERIOD_SIZE = [4 206158430] -> [4 103079215]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 1649267440] -> [32 824633720]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> (83 4294967295]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 9 [c01b4a14]: PERIODS = [2 51539607] -> [2 51539607]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
RATE = [16000 16000] -> [16000 16000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 68719476]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 68719476]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 824633720] -> [32 549755808]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 1649267440] -> [32 549755808]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> [250 4294967250]
Rule 19 [c01b4b1c]: BUFFER_TIME = (166 4294967295] -> [500 4294967250]
Rule 20 [c01b4968]: BUFFER_BYTES = [32 549755808] -> [32 549755808]
Rule 21 [c01b49c8]: RATE = [16000 16000] -> [16000 16000]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 16000] -> [16000 16000]
Rule 8 [c01b4b1c]: RATE = [16000 16000] -> [16000 16000]
Rule 9 [c01b4a14]: PERIODS = [2 51539607] -> [2 17179869]
Rule 10 [c01b4a14]: PERIOD_SIZE = [4 68719476] -> [4 34359738]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 68719476] -> [8 68719476]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [8 68719476] -> [8 68719476]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 68719476] -> [8 68719476]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 549755808] -> [32 274877904]
Rule 18 [c01b4b1c]: PERIOD_TIME = [250 4294967250] -> [250 2147483625]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 64] -> [32 64]
Rule 7 [c01b4b1c]: RATE = [16000 16000] -> [16000 16000]
Rule 9 [c01b4a14]: PERIODS = [2 17179869] -> [2 17179869]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 34359738] -> [4 34359738]
RATE = [48000 48000] -> [48000 48000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> (83 2147483646)
Rule 19 [c01b4b1c]: BUFFER_TIME = (166 4294967295] -> (166 4294967292)
Rule 21 [c01b49c8]: RATE = [48000 48000] -> [48000 48000]
Rule 7 [c01b4b1c]: RATE = [48000 48000] -> [48000 48000]
Rule 8 [c01b4b1c]: RATE = [48000 48000] -> [48000 48000]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [4 103079215] -> [4 103079215]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [8 206158430] -> [8 206158430]
CHANNELS = [1 1] -> [1 1]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 3 [c01b4a98]: FRAME_BITS = [32 64] -> [32 32]
Rule 6 [c01b4a14]: CHANNELS = [1 1] -> [1 1]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [4 103079215] -> [8 103079215]
Rule 13 [c01b4a98]: BUFFER_SIZE = [8 206158430] -> [16 206158430]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
Rule 16 [c01b4ba4]: PERIOD_BYTES = [32 824633720] -> [32 412316860]
Rule 17 [c01b4ba4]: BUFFER_BYTES = [32 1649267440] -> [64 824633720]
Rule 18 [c01b4b1c]: PERIOD_TIME = (83 4294967295] -> (166 4294967295]
Rule 19 [c01b4b1c]: BUFFER_TIME = (166 4294967295] -> (333 4294967295]
Rule 20 [c01b4968]: BUFFER_BYTES = [64 824633720] -> [64 824633720]
Rule 2 [c01b4a14]: SAMPLE_BITS = [32 32] -> [32 32]
Rule 4 [c01b4b1c]: FRAME_BITS = [32 32] -> [32 32]
Rule 5 [c01b4b1c]: FRAME_BITS = [32 32] -> [32 32]
Rule 7 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 8 [c01b4b1c]: RATE = [16000 48000] -> [16000 48000]
Rule 9 [c01b4a14]: PERIODS = [2 51539607] -> [2 25769803]
Rule 10 [c01b4a14]: PERIOD_SIZE = [8 103079215] -> [8 103079215]
Rule 11 [c01b4b1c]: PERIOD_SIZE = [8 103079215] -> [8 103079215]
Rule 12 [c01b4ba4]: PERIOD_SIZE = [8 103079215] -> [8 103079215]
Rule 13 [c01b4a98]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
Rule 14 [c01b4b1c]: BUFFER_SIZE = [16 206158430] -> [16 206158430]
Rule 15 [c01b4ba4]: BUFFER_SIZE = [16 206158430] -> [16 206158430]

At this point, my driver is closed and

-- 
Timur Tabi
Linux Kernel Developer @ Freescale

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: Unable to find an usable access for 'default'
  2007-07-09 21:02           ` Timur Tabi
@ 2007-07-10  6:29             ` Clemens Ladisch
  0 siblings, 0 replies; 8+ messages in thread
From: Clemens Ladisch @ 2007-07-10  6:29 UTC (permalink / raw)
  To: Timur Tabi; +Cc: alsa-devel

Timur Tabi wrote:
> Clemens Ladisch wrote:
> > This is possible.  Try using aplay with a .wav file that uses a sample
> > format supported by the hardware.
> 
> I tried that, and I'm still having problems.  Here's the output with rule debugging turned
> on.  I can't make sense of this, so could you interpret this for me?

The output shows that the application tries to set several parameters,
but never sets all parameters.

Please play to the "hw" device instead of the "default" one so that
alsa-lib doesn't try other sample formats.

It would help to tell me what the sample format of the file actually is.

And please show at least the struct snd_pcm_hardware definition of your
driver, together with any code that changes its filed and all calls to
snd_pcm_hw_constraint_*, if any.


Regards,
Clemens

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2007-07-10  6:29 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-03 22:19 Unable to find an usable access for 'default' Timur Tabi
2007-07-04  6:34 ` Clemens Ladisch
2007-07-05 12:44   ` Timur Tabi
2007-07-06 10:50     ` Clemens Ladisch
2007-07-06 22:32       ` Timur Tabi
2007-07-09  6:51         ` Clemens Ladisch
2007-07-09 21:02           ` Timur Tabi
2007-07-10  6:29             ` Clemens Ladisch

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.