Age | Commit message (Collapse) | Author |
|
initialize pcm_config to zero
|
|
sw_params ioctl() is failing with 'invalid parameter' error
since pointer to pcm_config passed from tinyplay is not zero
initialized, hence invalid values are passed for some
parameters.
authored-by: Shiv Maliyappanahalli <smaliyap@codeaurora.org>
Bug: 23525433
Change-Id: I841f29c82ec3fb7646ad8c47fca25963b5f77945
|
|
tinypcminfo: make function pcm_get_format_name() static
|
|
When building tinyalsa with gcc 5.x, the following warnings appear:
tinypcminfo.c:97:52: warning: 'format_lookup' is static but used in inline function 'pcm_get_format_name' which is not static
return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL;
^
tinypcminfo.c:97:35: warning: 'format_lookup' is static but used in inline function 'pcm_get_format_name' which is not static
return bit_index < ARRAY_SIZE(format_lookup) ? format_lookup[bit_index] : NULL;
And the build fails with:
tinypcminfo.o: In function `main':
tinypcminfo.c:(.text+0x2f0): undefined reference to `pcm_get_format_name'
collect2: error: ld returned 1 exit status
To fix this, this patch marks the pcm_get_format_name() as static,
since it's anyway only used in tinypcminfo.c.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
Tlv support2
|
|
The control pointer is not used in the tinymix_set_byte_ctl(),
hence removing it.
Signed-off-by: Samreen Nilofer <samreen.nilofer@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
|
|
The set/get byte control support more than 512 bytes.
This is utilized by tlv type controls.
Signed-off-by: Samreen Nilofer <samreen.nilofer@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
|
|
Add tinyasla support for bytes controls with TLV type
Signed-off-by: Mythri P K <mythri.p.k@intel.com>
Signed-off-by: Samreen Nilofer <samreen.nilofer@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
|
|
Revert "mixer: Control input value in mixer_ctl_set_value"
|
|
Allow setting of single byte control and make error from percent_to_int more consistent.
|
|
This reverts commit 0e07647e4b9c52bb5f3766f9564ed38b6030e556.
This commit disables reporting of an error when somebody requests an out
of range value from a control which seems like a bad goal to start with,
if something invalid is requested we should return an error not set
things to the nearest valid state.
Secondly since mixer_ctl_get_range_max returns an error for all control
types except TYPE_INTEGER, all controls that are not integers will be
set to -EINVAL with this patch included.
Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
|
|
tinyalsa set mixer function didn't support BYTE element
type
Add BYTE element type support
Change-Id: I95d1d82150805f16cc5103bac9c9c9500210bbbf
Signed-off-by: David Coutherut <davidx.coutherut@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
|
|
Currently, if a user sets a mixer with a percentage value
greater than the maximum, tinyalsa does not inform the user
about this "error" and silently replaces the user's value
by the maximum. However, if a user sets a mixer with an
integer value greater than the maximum, tinyalsa informs
the user with an error.
This patch purpose is to define the same behaviour in both
quoted cases: user is informed through an error.
Change-Id: I79547758266d1eb08a65d7b1355ec9859f3b27bb
Signed-off-by: Baptiste Robert <baptistex.robert@intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
|
|
Change-Id: I0e6a04da5a4b122a3748b16c7eb01c4a224c3d84
Signed-off-by: Andy Hung <hunga@google.com>
|
|
add support for mmap read
|
|
pcm_get_htimestamp can now use CLOCK_MONOTONIC
|
|
Mixer: Check validity of input value
|
|
|
|
charleskeepax-master
Conflicts:
tinymix.c
|
|
When the user wants to set a mixer with a value greater
than the maximum or smaller than the minimum, the mixer
is set at an undefined value.
This patch set purpose is to return a error if the input
value is out of range.
Signed-off-by: Baptiste Robert <baptistex.robert@intel.com>
Signed-off-by: David Wagner <david.wagner@intel.com>
Author-Tracking-BZ: 129089
|
|
tinycap: support streaming captured PCM to stdout
|
|
When user want to set a mixer control with a value out of range,
the mixer control will be set at its maximum
|
|
Clean up asoundlib.h header file
|
|
Setting binary controls
|
|
Add separate call for pcm prepare
|
|
Tinyalsa combines PREPARE and START calls to the driver in the pcm_start()
function. Typically, this is needed for making a driver allocating hardware
resources that are not related to a PCM stream.
Change-Id: Ic83fad784936bbebab28e8e425debd449182db88
Signed-off-by: Omair Mohammed Abdullah <omair.m.abdullah@linux.intel.com>
Signed-off-by: David Wagner <david.wagner@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Author-Tracking-BZ: 73509
|
|
Tinymix detected integer values when setting controls simply by calling
isdigit on the first character of the value being set. This causes
problems with enumerated controls whos values start with digits. This
patch improves this to provide more robust detection of integer values.
|
|
Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Signed-off-by: Nariman Poushin <nariman@opensource.wolfsonmicro.com>
|
|
|
|
Previously the timebase was not documented. Now a new pcm_open flag
can be used to specify the clock. If flag PCM_MONOTONIC is specified,
then pcm_open uses SNDRV_PCM_IOCTL_TTSTAMP with parameter
SNDRV_PCM_TSTAMP_TYPE_MONOTONIC to request timestamps in CLOCK_MONOTONIC.
Change-Id: I40ce359cb38d686cbb2521fb0602a8a17ab4f925
|
|
It is sometimes useful for testing to be able to stream the
captured PCM to another tool instead of being forced to save
it to a WAV file.
Using '--' instead of the target filename will send the raw
PCM to stdout (without any header).
Signed-off-by: Richard Fitzgerald <rf@opensource.wolfsonmicro.com>
|
|
|
|
|
|
S24_LE is 24 bit audio in a 32 bit sample size. Also
make the pcm_format_to_bits() function part of the API
since it will be required for tinycap.
|
|
|
|
Some sound cards update their controls due to external
events, such as HDMI EDID byte data changing when an
HDMI cable is connected. This API allows the count of
elements to be updated.
|
|
This replaces (and extends) the existing get/set_bytes
API, which is no longer required.
|
|
|
|
Remove unused constants and unimplemented functions.
|
|
tinyplay: Make error messages more meaningful
|
|
|
|
Compare file parameters with device capabilities and
print out the reason(s) why a certain file couldn't be played.
|
|
This uses the new pcm_params_* API.
|
|
This enables the capabilities of any given PCM to be queried.
Created with input from Priyesh Bisla and Gabriel Beddingfield.
|
|
|
|
Shutdown gracefully on ctrl-c signals
|
|
Add mixer_ctl_{get,set}_data()
|
|
Allow mixer controls to be accessed through the name, not only by id.
|
|
Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
|
|
For binary controls we don't want to go through
mixer_ctl_{set,get}_value() as that will trigger many calls to our
get()/put() callback in the kernel. Set the entire payload at once
and trigger the get()/put() callback once.
Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
|