New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 773898 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Feature



Sign in to add a comment

Update reef-uni audio config to use cros_config

Project Member Reported by sjg@chromium.org, Oct 12 2017

Issue description

At present this uses directories and mosys. We should define a config binding and move it to use cros_config_host and cros_config.

 

Comment 1 by sjg@chromium.org, Oct 12 2017

Cc: jclinton@chromium.org shapiroc@chromium.org
Project Member

Comment 2 by bugdroid1@chromium.org, Oct 16 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/26a52b19e00379160ec4c3e22adef78c510e1603

commit 26a52b19e00379160ec4c3e22adef78c510e1603
Author: Simon Glass <sjg@chromium.org>
Date: Mon Oct 16 22:11:05 2017

chromeos-config: Add support for audio config

Add a binding for, and implementation of, audio configuration. This allows
for installation of audio files from any location in the ebuild ${FILEDIR}
to a standard location in the root image.

BUG= chromium:773898 
TEST=manual on pyro, electro (not done yet)
Compare file locations between reef and reef-uni (apart from electro and
basking these come out the same)

Change-Id: I2b4d3d8e784be5ee4e07f36141ace6f90e41d60c
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/721004
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/26a52b19e00379160ec4c3e22adef78c510e1603/chromeos-config/libcros_config/test.dts
[modify] https://crrev.com/26a52b19e00379160ec4c3e22adef78c510e1603/chromeos-config/validate/validate_config_unittest.py
[modify] https://crrev.com/26a52b19e00379160ec4c3e22adef78c510e1603/chromeos-config/cros_config_host_py/cros_config_host.py
[modify] https://crrev.com/26a52b19e00379160ec4c3e22adef78c510e1603/chromeos-config/README.md
[modify] https://crrev.com/26a52b19e00379160ec4c3e22adef78c510e1603/chromeos-config/cros_config_host_py/libcros_config_host_unittest.py
[modify] https://crrev.com/26a52b19e00379160ec4c3e22adef78c510e1603/chromeos-config/cros_config_host_py/libcros_config_host.py

Project Member

Comment 3 by bugdroid1@chromium.org, Oct 17 2017

Comment 4 by sjg@chromium.org, Oct 17 2017

Labels: -Pri-3 Pri-1
Status: Started (was: Untriaged)
Project Member

Comment 5 by bugdroid1@chromium.org, Oct 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/7ccc37855000741d6762571f04d2e5cd4e610bcd

commit 7ccc37855000741d6762571f04d2e5cd4e610bcd
Author: Simon Glass <sjg@chromium.org>
Date: Wed Oct 18 17:30:41 2017

cros-unibuild: Add support for installing audio files

Implement unified build audio file installation.

BUG= chromium:773898 
TEST=manual on pyro, electro (not done yet)

Change-Id: Ib8513df3e37a063f070e3ed1f668873a87bbc141
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/708935
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/7ccc37855000741d6762571f04d2e5cd4e610bcd/eclass/cros-unibuild.eclass

Project Member

Comment 6 by bugdroid1@chromium.org, Oct 18 2017

Project Member

Comment 7 by bugdroid1@chromium.org, Oct 19 2017

Project Member

Comment 9 by bugdroid1@chromium.org, Oct 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/44a08d8fb32c0cd7fcbf0469f1cb003039beb8c8

commit 44a08d8fb32c0cd7fcbf0469f1cb003039beb8c8
Author: Simon Glass <sjg@chromium.org>
Date: Fri Oct 20 00:06:19 2017

adhd: Add a unified build dependency

We want to update the init script to call cros_config and thus have access
to the master configuration. Add a dependency to support this.

BUG= chromium:773898 
TEST=emerge-coral --unmerge chromeos-config chromeos-config-tools
emerge-coral adhd
See that it builds chromeos-config and chromeos-config-tools first

Change-Id: Idba75c487c8afc956d4ff769ebbcd41c32e0b579
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/728346
Reviewed-by: Jason Clinton <jclinton@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>

[modify] https://crrev.com/44a08d8fb32c0cd7fcbf0469f1cb003039beb8c8/media-sound/adhd/adhd-9999.ebuild

Project Member

Comment 10 by bugdroid1@chromium.org, Oct 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/adhd/+/22b66868630394e23ccdb0025c8c646d957f3a1b

commit 22b66868630394e23ccdb0025c8c646d957f3a1b
Author: Simon Glass <sjg@chromium.org>
Date: Fri Oct 20 08:51:18 2017

Add support for unified builds

With unified builds we should obtain any needed configuration from the
master configuration. Update the init script to do this.

BUG= chromium:773898 
TEST=manual on pyro, electro (not done yet)
Need to test on eve / other boards to check non-unibuild

Change-Id: I9fd31ab3eb0ea69abb732c7930e8e29f125e9675
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/721062
Reviewed-by: Dylan Reid <dgreid@chromium.org>

[modify] https://crrev.com/22b66868630394e23ccdb0025c8c646d957f3a1b/init/cras.sh

Comment 11 by sjg@chromium.org, Oct 20 2017

Cc: pbe...@chromium.org yueherngl@chromium.org
Status: Fixed (was: Started)
Status: Started (was: Fixed)
I just tested ToT on snappy and alan (reef-uni build) and this doesn't work. Legacy builds are still fine. The problem is in https://chromium-review.googlesource.com/c/chromiumos/third_party/adhd/+/721062 . The legacy scripts 'get_device_config_dir' and 'get_internal_ucm_suffix' output a fully qualified path.

cras_config does not.

As a result, on legacy builds we get:
/usr/bin/cras --dsp_config=/etc/cras/snappy/SNAPPY/dsp.ini --device_config_dir=/etc/cras/snappy/SNAPPY --internal_ucm_suffic=snappy.SNAPPY

But on reef-uni, we get:
/usr/bin/cras --dsp_config=snappy/dsp.ini --device_config_dir=snappy --internal_ucm_suffic=snappy

I will send a CL that fixes this.

Project Member

Comment 13 by bugdroid1@chromium.org, Oct 30 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/adhd/+/e19a47d3bea9bdc773f9b92aeb26b0a8e866416c

commit e19a47d3bea9bdc773f9b92aeb26b0a8e866416c
Author: Jason D. Clinton <jclinton@chromium.org>
Date: Mon Oct 30 03:13:01 2017

cras.sh: Add fully-qualified path for Unibuild case

BUG= chromium:773898 
TEST=build and deploy image to snappy and alan

Change-Id: I63db85bbe202a1b9340fab868e36426b4169e00d
Reviewed-on: https://chromium-review.googlesource.com/743024
Commit-Ready: Jason Clinton <jclinton@chromium.org>
Tested-by: Jason Clinton <jclinton@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>

[modify] https://crrev.com/e19a47d3bea9bdc773f9b92aeb26b0a8e866416c/init/cras.sh

Status: Fixed (was: Started)
Project Member

Comment 15 by bugdroid1@chromium.org, Oct 30 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/d740726a6c628281424e1829c8ad3c0ce8ba31bb

commit d740726a6c628281424e1829c8ad3c0ce8ba31bb
Author: Simon Glass <sjg@chromium.org>
Date: Mon Oct 30 23:35:29 2017

chromeos-config-tools: Don't run tests that need Python

We cannot run these tests on the target since the full Python environment
does not seem to be available.

BUG= chromium:773898 
TEST=FEATURES=test sudo -E emerge --nodeps  chromeos-config-tools

Change-Id: I3482f20d5b95b9e955081b1d84e140ced438202a
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/743714
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/d740726a6c628281424e1829c8ad3c0ce8ba31bb/chromeos-base/chromeos-config-tools/chromeos-config-tools-9999.ebuild

Project Member

Comment 16 by bugdroid1@chromium.org, Oct 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/5959d1364bf627533fbacca6e5375d8b97c1b5ce

commit 5959d1364bf627533fbacca6e5375d8b97c1b5ce
Author: Simon Glass <sjg@chromium.org>
Date: Tue Oct 31 06:21:33 2017

chromeos-config: Set up cras-config-dir as a target directory

We want to use this as a target directory in an init script. Mark it as
such in the schema. This allows 'cros_config --abspath' to work with it.

Also this has shown up a problem in the tests. The currently schema is
hard-coded in test.dts rather than being written from cros_config_host.
Update the test script to generate the file each time.

Finally, add a test for each file property that exists in the schema.

BUG= chromium:773898 
TEST=FEATURES=test sudo -E emerge --nodeps chromeos-config-tools
manually on snappy

Change-Id: I5ea232aad9473f9086e479c1335a8f5caba96763
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/743025
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/5959d1364bf627533fbacca6e5375d8b97c1b5ce/chromeos-config/chromeos-config-test-setup.sh
[modify] https://crrev.com/5959d1364bf627533fbacca6e5375d8b97c1b5ce/chromeos-config/libcros_config/test.dts
[modify] https://crrev.com/5959d1364bf627533fbacca6e5375d8b97c1b5ce/chromeos-config/cros_config_main_unittest.cc
[modify] https://crrev.com/5959d1364bf627533fbacca6e5375d8b97c1b5ce/chromeos-config/validate_config.py
[modify] https://crrev.com/5959d1364bf627533fbacca6e5375d8b97c1b5ce/chromeos-config/libcros_config_host_unittest.py

Project Member

Comment 17 by bugdroid1@chromium.org, Oct 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/de755bc5020ac8f186f13ec2b31c1f8dd8f51b67

commit de755bc5020ac8f186f13ec2b31c1f8dd8f51b67
Author: Simon Glass <sjg@chromium.org>
Date: Tue Oct 31 17:41:40 2017

chromeos-config: Allow the model name in touch/audio configs

We are seeing use of the model name in filesnames used in touch and audio.
Some of this is due to legacy filename structures. For example, reef-uni
has:

   alsa-conf = "ucm-config/${card}.reef.BASKING/${card}.reef.BASKING.conf";

With this we should be able to use share the config between electro,
basking, alan and bigdaddy, which can all become:

   alsa-conf = "ucm-config/${card}.reef.{MODEL}/${card}.reef.{MODEL}.conf";

BUG= chromium:773898 
TEST=FEATURES=test sudo -E emerge --nodeps  chromeos-config-tools

Change-Id: Ia079e276a0413c1855a09183ac8b3acb500a8079
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/743026

[modify] https://crrev.com/de755bc5020ac8f186f13ec2b31c1f8dd8f51b67/chromeos-config/libcros_config_host/libcros_config_host.py

Comment 18 by sjg@chromium.org, Nov 2 2017

Status: Assigned (was: Fixed)
Reopening to address feedback. May as well tag it on the same bug.
Project Member

Comment 19 by bugdroid1@chromium.org, Nov 3 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/b9eb70e1fd30e6f0d63ce33e9e3a989c1fc76eab

commit b9eb70e1fd30e6f0d63ce33e9e3a989c1fc76eab
Author: Simon Glass <sjg@chromium.org>
Date: Fri Nov 03 20:52:43 2017

chromeos-config: Allow variables in cras-config-dir, ucm-suffix

We might want to mode the model name in here. Update the schema to permit
this.

BUG= chromium:773898 
TEST=Update astronaut audio to say:
		audio {
			main {
				audio-type = <&audio_type_1mic>;
				cras-config-dir = "${model}";
				ucm-suffix = "${model}";
			};
		};

cros_workon --host chromeos-config-tools
sudo emerge -q --nodeps chromeos-config-tools
emerge-coral -q --nodeps chromeos-config-bsp chromeos-config
See that the validator is happen now
Signed-off-by: Simon Glass <sjg@chromium.org>

Change-Id: I98db9fa00e8935e8353ca31fb019430ea1ecaf4a
Reviewed-on: https://chromium-review.googlesource.com/751699
Commit-Ready: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Jason Clinton <jclinton@chromium.org>
Reviewed-by: Patrick Berny <pberny@chromium.org>

[modify] https://crrev.com/b9eb70e1fd30e6f0d63ce33e9e3a989c1fc76eab/chromeos-config/validate_config.py

Project Member

Comment 20 by bugdroid1@chromium.org, Nov 3 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/c34e7076858372d0c7729e72c1e821431111a8ec

commit c34e7076858372d0c7729e72c1e821431111a8ec
Author: Simon Glass <sjg@chromium.org>
Date: Fri Nov 03 20:52:43 2017

chromeos-config: audio: Support submodels properly

At present the submodel config is not actually scanned when generating the
audio file list. This was missed when adding the submodel implementation.

Scan all models / submodels and generate audio config for each. At present
the config must either all be in the model or all be in the submodels.
However, since the validator checks that, we can just pick up everything
we can find.

BUG= chromium:773898 
TEST=./run_tests.sh
(with updated tests)

Change-Id: If34546f8af84562c6b7b32f4b0267f1c94672084
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/753523
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/c34e7076858372d0c7729e72c1e821431111a8ec/chromeos-config/libcros_config_host/libcros_config_host.py
[modify] https://crrev.com/c34e7076858372d0c7729e72c1e821431111a8ec/chromeos-config/libcros_config_host_unittest.py

Project Member

Comment 21 by bugdroid1@chromium.org, Nov 3 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/ec414c8ac684bb4e24068e89f4260ab0d1fb0335

commit ec414c8ac684bb4e24068e89f4260ab0d1fb0335
Author: Simon Glass <sjg@chromium.org>
Date: Fri Nov 03 20:52:43 2017

chromeos-config: audio: Allow more properties in the family

In some cases we share these across models and it is convenient to put
cras-config-dir, ucm-suffix and topology-bin in the family instead of the
model.

This was shown up recently in the coral config where submodels are used to
provide 1- or 2-microphone configuration, and it is easier to specify the
details once in the family.

Putting this config in the family is not mandatory, but these properties
must be present in either the model node or the family. At present there
is no validation to check this. Assuming we do continue to want to support
both, we should add this.

Also update the test to have this more realistic example.

BUG= chromium:773898 
TEST=./run_tests.sh
(with updated tests)

Change-Id: I0a6ee6fe61dd1e675fb0db925714389d15d25a4d
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/753524
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/ec414c8ac684bb4e24068e89f4260ab0d1fb0335/chromeos-config/libcros_config/test.dts
[modify] https://crrev.com/ec414c8ac684bb4e24068e89f4260ab0d1fb0335/chromeos-config/validate_config.py
[modify] https://crrev.com/ec414c8ac684bb4e24068e89f4260ab0d1fb0335/chromeos-config/libcros_config_host_unittest.py

Project Member

Comment 22 by bugdroid1@chromium.org, Nov 3 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/adhd/+/037f81b776aaa0cc38281e5e5a05918e60ef2dc8

commit 037f81b776aaa0cc38281e5e5a05918e60ef2dc8
Author: Jason D. Clinton <jclinton@chromium.org>
Date: Fri Nov 03 23:29:03 2017

init: Use the --abspath feature in cros_config

--abspath gives us the fully qualified path to files.

BUG= chromium:773898 
TEST=build_packages/image for reef-uni. Deploy to bigdaddy and confirm
cras_server is pleased as pie.

Change-Id: Ide7361bb72c9830c4394c7a0948d73c3d03b65fc
Reviewed-on: https://chromium-review.googlesource.com/754012
Commit-Ready: Jason Clinton <jclinton@chromium.org>
Tested-by: Jason Clinton <jclinton@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: C Shapiro <shapiroc@google.com>

[modify] https://crrev.com/037f81b776aaa0cc38281e5e5a05918e60ef2dc8/init/cras.sh

Comment 23 by sjg@chromium.org, Nov 4 2017

Labels: Unibuild

Comment 24 by sjg@chromium.org, Nov 6 2017

Labels: -Pri-1 Pri-3
One more change, and then I think this is done

https://chrome-internal-review.googlesource.com/c/chromeos/overlays/overlay-reef-private/+/496474
Project Member

Comment 25 by bugdroid1@chromium.org, Nov 6 2017

Project Member

Comment 26 by bugdroid1@chromium.org, Nov 8 2017

Project Member

Comment 27 by bugdroid1@chromium.org, Nov 10 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/e3a7e233b216c046a0eb5dbcf7b64a61ee51835b

commit e3a7e233b216c046a0eb5dbcf7b64a61ee51835b
Author: Simon Glass <sjg@chromium.org>
Date: Fri Nov 10 00:43:55 2017

chromeos-config: Support looking up audio config

The feature which allowed some audio config to move to the family
triggered a need to access the family in cros_config. Add support for this
while we resolve the underlying issue.

BUG= chromium:773898 ,  chromium:761284 , b:68953759
TEST=FEATURES=test sudo -E emerge --nodeps -q chromeos-config-tools
Note: NOT tested on a device yet
Change-Id: I005bdbd588b7bbd9beb507be716fad102534d89c
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/757257
Reviewed-by: Lann Martin <lannm@chromium.org>
Reviewed-by: Patrick Berny <pberny@chromium.org>

[modify] https://crrev.com/e3a7e233b216c046a0eb5dbcf7b64a61ee51835b/chromeos-config/libcros_config/cros_config_unittest.cc
[modify] https://crrev.com/e3a7e233b216c046a0eb5dbcf7b64a61ee51835b/chromeos-config/libcros_config/cros_config.cc
[modify] https://crrev.com/e3a7e233b216c046a0eb5dbcf7b64a61ee51835b/chromeos-config/libcros_config/cros_config.h

Comment 28 by sjg@chromium.org, Nov 10 2017

Status: Fixed (was: Assigned)
We have this working on various reef-uni and coral models, so I think it can be closed.
Project Member

Comment 29 by bugdroid1@chromium.org, Dec 2 2017

Labels: merge-merged-release-R63-10032.B
The following revision refers to this bug:
  https://chrome-internal.googlesource.com/chromeos/overlays/baseboard-reef-private/+/8b3edb0ae903dcceaaa78b0e2dff701f92e0aaf3

commit 8b3edb0ae903dcceaaa78b0e2dff701f92e0aaf3
Author: Simon Glass <sjg@chromium.org>
Date: Sat Dec 02 01:25:31 2017

Sign in to add a comment