Add EC and keyboard backlight test to test_list.all

EC functional test and keyboard backlight test are finished.
Added them to test_list.all

Signed-off-by: Vic Yang <victoryang@chromium.org>

BUG=none
TEST=Manual test

Change-Id: I23f96733858e40c79223297cf918459c07d7710e
Reviewed-on: https://gerrit.chromium.org/gerrit/17236
Commit-Ready: Vic Yang <victoryang@chromium.org>
Reviewed-by: Vic Yang <victoryang@chromium.org>
Tested-by: Vic Yang <victoryang@chromium.org>
Add factory_Prompt, and tweak LED code to blink LEDs on VT0..7.

BUG=chrome-os-partner:6623
TEST=Manual

Change-Id: I419b5566c5aed83217828b0875ef97b38bd66e3d
Reviewed-on: https://gerrit.chromium.org/gerrit/17465
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Jon Salz <jsalz@chromium.org>
Tested-by: Jon Salz <jsalz@chromium.org>
Add audio quality factory test, and audio_helper as a common audio
utility code.

BUG=chrome-os-partner:6849
TEST=Run factory_AudioQulity test, send 'LOOP_1' command to port 8888 on
device. Device should respond by start audio loop.

Change-Id: I677c41eeef9e7a9fad9a01b35867c1ab71c7329d
Reviewed-on: https://gerrit.chromium.org/gerrit/11724
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Hsinyu Chao <hychao@chromium.org>
Tested-by: Hsinyu Chao <hychao@chromium.org>
[autotest] Check that we have enough hosts to run a suite before starting

Before scheduling jobs to reimage N devices meeting certain board+pool
criteria, ensure that we actually have N functional devices meeting
those criteria in the testbed.  If not, error out.

BUG=chromium-os:27287
TEST=./site_utils/run_suite.py -b x86-mario -i x86-mario-release/R19-1908.0.0-a1-b1729 -s dummy; # should run tests
TEST=./site_utils/run_suite.py -b x86-mario -i x86-mario-release/R19-1908.0.0-a1-b1729 -s dummy -p bvt; # should run tests
TEST=Clone the above job, set num=2 (greater than the pool:bvt machines in the testbed), see that the job errors out early.

Change-Id: I20d43c735d857c351c5b1a34ee5c8c94a06fe948
Reviewed-on: https://gerrit.chromium.org/gerrit/17412
Tested-by: Chris Masone <cmasone@chromium.org>
Reviewed-by: Chris Sosa <sosa@chromium.org>
Reviewed-by: Scott Zawalski <scottz@chromium.org>
Commit-Ready: Chris Masone <cmasone@chromium.org>
factory: Add battery command to EC functional test

Battery controler IC is also on EC's smbus. This CL adds a basic
communication test using ectool battery command.

BUG=chrome-os-partner:6610
TEST=manual:
  run_remote_test.sh --remote=DUT_HOSTNAME hardware_EC

Change-Id: Ia949432b0587905874834d189002497743c79aeb
Reviewed-on: https://gerrit.chromium.org/gerrit/17491
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Rong Chang <rongchang@chromium.org>
Tested-by: Rong Chang <rongchang@chromium.org>
Add test_name and system parameters to the testreport report.

The regular croschart/server/testreport shows all tests which takes a while
to return.  Passing test_name='xxx'&system='yyy' greatly speeds the
query/report.

BUG=None
TEST=http://truty.i/croschart/server/testreport?interval=2,week&test_name=platform_BootPerfServer&system=ALEX

Change-Id: I67079fa95442faebabd4080f79953b363b4bc772
Reviewed-on: https://gerrit.chromium.org/gerrit/14956
Reviewed-by: Dennis Jeffrey <dennisjeffrey@chromium.org>
Commit-Ready: Mike Truty <truty@chromium.org>
Tested-by: Mike Truty <truty@chromium.org>
network_3GModemControl: Increase Enable timeout

The Y3300 seems to need around or a little over 10 seconds to enable and
register.  flimflam sometimes waits for it to register before setting
Powered=True, so increase the enable timeout long enough for it to enable
and register.

Also, add some logging so we can more easily see what the test is doing
without cross-referencing the source.

BUG=chromium-os:25378
TEST=is one, fails later (Connect)

Change-Id: Ifa154bf6bebcfd6abe140ccae1135e790d88d79b
Reviewed-on: https://gerrit.chromium.org/gerrit/17489
Reviewed-by: ttuttle <ttuttle@chromium.org>
Tested-by: ttuttle <ttuttle@chromium.org>
Commit-Ready: ttuttle <ttuttle@chromium.org>
Introduce a hostnames query parameter to scrub data from inferior machines.

This is an accommodation to enable some data scrubbing from machines that
confuse comparisons between unlike systems.

BUG=chromium-os:27346
TEST=http://truty.i/croschart/server/chart?interval=2%2Cweek&board=lumpy-r19&testkey=desktopui_PageCyclerTests%2CPageCyclerTest.Alexa_usFile%2CPageCyclerTest.MozFile%2CPageCyclerTest.Moz2File&system=LUMPY&hostnames=chromeos-rack5-host11,chromeos-rack5-host12

Change-Id: I0aaa65d47196d1e38ddc47cc1817c4403819cf15
Reviewed-on: https://gerrit.chromium.org/gerrit/17539
Reviewed-by: asharif <asharif@chromium.org>
Commit-Ready: Mike Truty <truty@chromium.org>
Tested-by: Mike Truty <truty@chromium.org>
Functional tests for shellball using FAFT.

TEST=FAFT
BUG=None

Change-Id: Ic02ad11265c99a9263c9ecaaa6a91712e8363617
Reviewed-on: https://gerrit.chromium.org/gerrit/17424
Reviewed-by: Tom Wai-Hong Tam <waihong@chromium.org>
Commit-Ready: Rajesh Chenna <rchenna@chromium.org>
Tested-by: Rajesh Chenna <rchenna@chromium.org>
factory: Start using new factory_HWID test.

The new HWID tools (and HWID data) does not work with old factory_ProbeHWID and
factory_WriteGBB any more. We should replace those tests by new factory_HWID in
standard test list.

Note factory_Keyboard is also moved, to reflect that it's not a "required test".

BUG=chrome-os-partner:6911
TEST=Performed factory test with new test list.

Change-Id: I7b6018d1ed465385c0f396e720a3ae7bb72e42e1
Reviewed-on: https://gerrit.chromium.org/gerrit/17396
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Tammo Spalink <tammo@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
factory_HWID: Add basic interactive mode.

To support RMA and testing process that does not run shop floor server, we need
an interactive mode HWID selection task.

This is the first version - listing all available HWIDs. We can add probing /
checking procedure once fast-probing (check without reading firmware) is
implemented in hwid_tools.

BUG=chrome-os-partner:6003
TEST=Manually invoked factory_HWID test, and see HWID lists.

Change-Id: I2747812b98d607f863076dca3abd5a861af6bc2e
Reviewed-on: https://gerrit.chromium.org/gerrit/17397
Reviewed-by: Jon Salz <jsalz@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
Reviewed-by: Tammo Spalink <tammo@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
autotest: Update gooftool location.

The factory required test backend "gooftool" has changed its location from
/usr/local/gooftool into /usr/local/factory/bin.

BUG=chromium-os:26622
TEST=Manually performed factory_Finalize.

Change-Id: I51ef236e8f52be9db0e4ff0288ac2bb3ecf38a38
Reviewed-on: https://gerrit.chromium.org/gerrit/17468
Reviewed-by: Tammo Spalink <tammo@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
Add features to set the device's IP address and load custom kernel
modules for tx99 mode.

BUG=chrome-os-partner:6623
TEST=Manual

Change-Id: I0f5277a25fb4b841b732e3de9bf99f7e7d3a5ab0
Reviewed-on: https://gerrit.chromium.org/gerrit/17573
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Tested-by: Jon Salz <jsalz@chromium.org>
Commit-Ready: Jon Salz <jsalz@chromium.org>
Add testing commands.

BUG=chrome-os-partner:6627
TEST=Manual

Change-Id: Iedc348e26e72cd391e8bb95b292df8d6593ede61
Reviewed-on: https://gerrit.chromium.org/gerrit/17574
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Tested-by: Jon Salz <jsalz@chromium.org>
Commit-Ready: Jon Salz <jsalz@chromium.org>
Consolidated "platform" labels to increase DUT utilization since the ones with modems as under utilized.

BUG=None
TEST=validate json, downloader --verbose, test_scheduler --verbose

Change-Id: I80f76f528f3b42811773916f10726323b6ba15af
Reviewed-on: https://gerrit.chromium.org/gerrit/17550
Reviewed-by: ttuttle <ttuttle@chromium.org>
Reviewed-by: Scott Zawalski <scottz@chromium.org>
Tested-by: Scott Zawalski <scottz@chromium.org>
Commit-Ready: Scott Zawalski <scottz@chromium.org>
Disable R19 bvt tests in test_scheduler.

Disable bvt tests for top of tree builds on alex, zgb, mario, and stumpy.

Update the dashboard to recognize these builds and add them to the bvt display.
Remove old regex searches for 4 part version jobs. This adds confusion and has
not been used for a while. I also went and confirmed that over a large amount of
jobs this code didn't execute at all.

Note: The dashboard will be split by platform, as we migrate to the new system
this will normalize from a bunch of different platforms down to our standard
platform names. This means you may, for a time see jobs for the same build under
platform names like ALEX CDMA GOBI2K, ALEX and ALEX CDMA GOBI3k.

TEST=Ran dashboard locally, ran test_scheduler and ensured that no bvtx4 jobs
were started. Also ran validate_json_files.sh.
BUG=chromium-os:13496

Change-Id: Iba8591708fcffb8e88f61eff7688e39b87ff3059
Reviewed-on: https://gerrit.chromium.org/gerrit/17538
Commit-Ready: Scott Zawalski <scottz@chromium.org>
Reviewed-by: Scott Zawalski <scottz@chromium.org>
Tested-by: Scott Zawalski <scottz@chromium.org>
factory_HWID: Use gooftool to write HWID.

When testing factory_HWID, on some platforms it will fail because flashrom
default bus is set to LPC, not SPI.

gooftool now supports writing HWID by "--write_hwid --hwid HWID" param. Using
flashrom directly would need to deal with lots of syntax and usage related
problems, so we should use gooftool instead.

BUG=chrome-os-partner:8396
TEST=Manually performed factory_HWID and passed.

Change-Id: I58033f5a6ca85c60106032d547896d4fae6a626e
Reviewed-on: https://gerrit.chromium.org/gerrit/17584
Reviewed-by: Rong Chang <rongchang@chromium.org>
Commit-Ready: Hung-Te Lin <hungte@chromium.org>
Tested-by: Hung-Te Lin <hungte@chromium.org>
factory: Add the camera performance test backend library

The CL adds the supporting library which will be used in the
factory camera performance test. It works with the SFR Plus test
charts and can automatically identify several image quality matrix
without the human intervention. The test charts files will be added
later in another CL after the design details are fixed.

The library currently supports two major functionalities - the
slanted-edge MTF computation and the lens shading detection.
Besides these, it can also check whether the test pattern is
correctly present in the test image. This can prevent the autotest
being fooled by other targets.

The MTF computation is implemented according to the guideline from
the Imatest. For more information, pease visit the Imatest website.

BUG=chrome-os-partner:6617
TEST=Supply the functions with synthetic test cases -> works.

Change-Id: Icef634576a9a3e73e2cb5df48cdf7230758b1c02
Reviewed-on: https://gerrit.chromium.org/gerrit/17296
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Commit-Ready: Tai-Hsu Lin <sheckylin@chromium.org>
Tested-by: Tai-Hsu Lin <sheckylin@chromium.org>
network_3GModemControl: Provide last good APN to MM

When we connect the modem using modem-manager, we need to provide an APN.
If we have a last good APN, use that, otherwise use "epc.tmobile.com".

BUG=chromium-os:25378
TEST=is one; now passes sometimes instead of always failing

Change-Id: Iaa336e707098ae14cdc0111c855fbbccc4a52530
Reviewed-on: https://gerrit.chromium.org/gerrit/17531
Commit-Ready: ttuttle <ttuttle@chromium.org>
Reviewed-by: ttuttle <ttuttle@chromium.org>
Tested-by: ttuttle <ttuttle@chromium.org>
[autotest] Clear up host attributes and labels after suite run

When we reimage a device, we label it with the build we put on there,
and then attach a host-attribute indicating where autotest should
search for packages at test time.

It behooves us to clean up after ourselves.

BUG=chromium-os:27226
TEST=./site_utils/run_suite.py -b x86-mario -i x86-mario-release/R19-1916.0.0-a1-b1736 -s dummy
TEST=After the suite runs, check on the autotest front end to ensure
TEST=that the hosts used don't have any cros-version-* labels on them.
STATUS=Fixed

Change-Id: Ieda46de291b1bfb487d2454cc65c71aecd7abead
Reviewed-on: https://gerrit.chromium.org/gerrit/17537
Reviewed-by: Scott Zawalski <scottz@chromium.org>
Commit-Ready: Chris Masone <cmasone@chromium.org>
Tested-by: Chris Masone <cmasone@chromium.org>