| # Copyright 2018 The Chromium OS Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| |
| import logging |
| import subprocess |
| |
| from autotest_lib.client.common_lib import error |
| |
| |
| def detect(): |
| """ |
| Checks whether or not a device equips kepler by using 'lspci'. |
| |
| @returns string: 'kepler' if a device equips kepler, empty string otherwise. |
| """ |
| kepler_id = '1ae0:001a' |
| try: |
| lspci_result = subprocess.check_output(['lspci', '-n', '-d', kepler_id]) |
| logging.debug("lspci output:\n%s", lspci_result) |
| return 'kepler' if lspci_result.strip() else '' |
| except subprocess.CalledProcessError: |
| logging.exception('lspci failed.') |
| raise error.TestFail('Fail to execute "lspci"') |