// /** @file
// Terminal module installs Simple Text Input(ex)/Out protocols for serial devices.
//
// This module will install Simple Text Input (Ex) protocol and Simple Test Output
// protocols based on Serial I/O protocol for serial devices including hotplug serial
// devices.
//
// Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>
//
// SPDX-License-Identifier: BSD-2-Clause-Patent
//
// **/


#string STR_MODULE_ABSTRACT             #language en-US "Terminal module installs Simple Text Input(ex)/Out protocols for serial devices"

#string STR_MODULE_DESCRIPTION          #language en-US "This module will install Simple Text Input (Ex) protocol and Simple Test Output protocols based on Serial I/O protocol for serial devices including hotplug serial devices."

