// /** @file
// Serial driver that layers on top of a Serial Port Library instance.
//
// Serial driver that layers on top of a Serial Port Library instance.
//
// Copyright (c) 2008 - 2015, Intel Corporation. All rights reserved.<BR>
//
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// **/


#string STR_MODULE_ABSTRACT             #language en-US "Serial driver that layers on top of a Serial Port Library instance"

#string STR_MODULE_DESCRIPTION          #language en-US "Serial driver that layers on top of a Serial Port Library instance."

