// /** @file
// Console support on graphic devices.
//
// This driver will install Simple Text Output protocol by consuming Graphices Output
// protocol on graphic 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 "Console support on graphic devices"

#string STR_MODULE_DESCRIPTION          #language en-US "This driver will install SimpleTextOutputProtocol by consuming GraphicesOutput\n"
                                                        "Protocol on graphics devices."

