Age | Commit message (Collapse) | Author |
|
|
|
tinymix_detail_control took controls' name as its parameter to
identify which control is that we want to print data of. However,
if there are some controls with same name, we will always print
the data of the first one.
|
|
https://android.googlesource.com/platform/external/tinyalsa/+/f2d93a540297e75815eeb6644bf675cdae3be909
commit f2d93a540297e75815eeb6644bf675cdae3be909
author HW Lee <hwlee@google.com>
tinymix: fix setting enum str started with digits
For those value strings which are started with digits, they must be set
as enum instead of index value.
Test: with mixer control values started with digits like '48KHz'
Change-Id: I1c70f5613a48d020d3248b71c1e4384f83e33d25
Signed-off-by: HW Lee <hwlee@google.com>
|
|
TLV header is added by tinyalsa library. Remove tlv
header addition from tinymix to avoid adding it twice.
|
|
|
|
|
|
|
|
Signed-off-by: Ricardo Biehl Pasquali <pasqualirb@gmail.com>
|
|
Signed-off-by: Andrew Ford <aford@opensource.cirrus.com>
|
|
The current format of the data printed for enumeration controls is to
list all the control values with no separator between them and to place
a comma before the currently selected value. This format is hard to
parse as a human and very difficult to parse automatically. Change this
to separate individual values with a comma and mark the selected value
with a right angle bracket.
For example, the following output is given for the "AEC Loopback"
control on one of our CODECs:
HPOUT1LHPOUT1R, SPKOUTSPKDATLSPKDATR
After the change this becomes:
HPOUT1L, HPOUT1R, > SPKOUT, SPKDATL, SPKDATR,
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
|
|
It is only required to obtain the value of the control once whilst
processing tinymix_print_enum. This will significantly reduce the amount
of IOCTLs sent for reading an enum control.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
|
|
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
|
|
|
|
The arguments passed after the set command are not handled properly,
leading to segfaults or inability to set controls
Example with control 0 which is Headset Volume on my NUC:
before fix
$ ./tinymix set 0
Segmentation fault
$ ./tinymix set 0 10
Segmentation fault
$ ./tinymix set 0 10 20
Error: 3 values given, but control only takes 2
After correction
$ ./tinymix set 0
no value(s) specified
$ ./tinymix set 0 10
$ ./tinymix set 0 10 10
$ ./tinymix set 0 10 10 10
Error: 3 values given, but control only takes 2
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
|
|
The TLV byte controls expect a TLV header as well. Check for TLV
access and add TLV header size before invoking mixer API.
Change-Id: I12ba129e5bbc0676e80eb920e85b3683decfe0db
Signed-off-by: Pawse, GuruprasadX <guruprasadx.pawse@intel.com>
Signed-off-by: Pankaj Bharadiya <pankaj.laxminarayan.bharadiya@intel.com>
|
|
|
|
hundreds of paths on the audio side of this chip.
There was a recent change whereby tinymix will ALWAYS prints the routes/paths
for the different ports on ALSA. I consider this to be a regression. It
really should only be printed if asked.
In addition, I've modified tinymix to more closely conform to the following:
https://www.gnu.org/prep/standards/html_node/Command_002dLine-Interfaces.html
Lastly, I removed a redundant errno.h..
|
|
|
|
|