1# -*- coding: utf-8 -*- 2# 3# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 4# Use of this source code is governed by a BSD-style license that can be 5# found in the LICENSE file. 6 7__author__ = 'nsanders@chromium.org (Nick Sanders)' 8 9import logging, os 10 11from autotest_lib.client.bin import test, utils 12from autotest_lib.client.common_lib import error 13from autotest_lib.client.cros import gpio 14 15class hardware_GPIOSwitches(test.test): 16 version = 4 17 18 def initialize(self): 19 self._gpio = gpio.Gpio(error.TestError) 20 21 def gpio_read(self, name): 22 try: 23 return self._gpio.read(name) 24 except: 25 raise error.TestError( 26 'Unable to read gpio value "%s"\n' 27 '測試程式無法讀取 gpio 數值 "%s"' % (name, name)) 28 29 def run_once(self): 30 self._gpio.setup() 31 keyvals = {} 32 keyvals['level_recovery'] = self.gpio_read('recovery_button') 33 keyvals['level_developer'] = self.gpio_read('developer_switch') 34 keyvals['level_firmware_writeprotect'] = self.gpio_read('write_protect') 35 36 self.write_perf_keyval(keyvals) 37