1*9c5db199SXin Li# Copyright (c) 2012 The Chromium OS Authors. All rights reserved. 2*9c5db199SXin Li# Use of this source code is governed by a BSD-style license that can be 3*9c5db199SXin Li# found in the LICENSE file. 4*9c5db199SXin Li 5*9c5db199SXin Li''' 6*9c5db199SXin LiUtilities for serial port communication. 7*9c5db199SXin Li''' 8*9c5db199SXin Liimport glob 9*9c5db199SXin Liimport os 10*9c5db199SXin Liimport re 11*9c5db199SXin Li 12*9c5db199SXin Lidef find_tty_by_driver(driver_name): 13*9c5db199SXin Li '''Finds the tty terminal matched to the given driver_name.''' 14*9c5db199SXin Li candidates = glob.glob('/dev/tty*') 15*9c5db199SXin Li for path in candidates: 16*9c5db199SXin Li if re.search( 17*9c5db199SXin Li driver_name, 18*9c5db199SXin Li os.path.realpath('/sys/class/tty/%s/device/driver' % 19*9c5db199SXin Li os.path.basename(path))): 20*9c5db199SXin Li return path 21*9c5db199SXin Li return None 22