summaryrefslogtreecommitdiff
path: root/IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboard.msa
blob: ddf62a41eb8d60950df76ba546c8158ff4e8a633 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<?xml version="1.0" encoding="UTF-8"?>
<ModuleSurfaceArea xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0  http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd" xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <MsaHeader>
    <ModuleName>Ps2Keyboard</ModuleName>
    <ModuleType>DXE_DRIVER</ModuleType>
    <GuidValue>3DC82376-637B-40a6-A8FC-A565417F2C38</GuidValue>
    <Version>1.0</Version>
    <Abstract>Ps2 Keyboard Driver</Abstract>
    <Description>This dirver directly uses IsaIo protocol service to support KeyBoard work.</Description>
    <Copyright>Copyright (c) 2006 - 2007, Intel Corporation.</Copyright>
    <License>All rights reserved.
      This software and associated documentation (if any) is furnished
      under a license and may only be used or copied in accordance
      with the terms of the license. Except as permitted by such
      license, no part of this software or documentation may be
      reproduced, stored in a retrieval system, or transmitted in any
      form or by any means without the express written consent of
      Intel Corporation.</License>
    <Specification>FRAMEWORK_BUILD_PACKAGING_SPECIFICATION   0x00000052</Specification>
  </MsaHeader>
  <ModuleDefinitions>
    <SupportedArchitectures>IA32 X64 IPF EBC</SupportedArchitectures>
    <BinaryModule>false</BinaryModule>
    <OutputFileBasename>Ps2Keyboard</OutputFileBasename>
  </ModuleDefinitions>
  <LibraryClassDefinitions>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>UefiDriverModelLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>UefiDriverEntryPoint</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>UefiLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>UefiBootServicesTableLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>ReportStatusCodeLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>DebugLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>UefiRuntimeServicesTableLib</Keyword>
    </LibraryClass>
    <LibraryClass Usage="ALWAYS_CONSUMED">
      <Keyword>MemoryAllocationLib</Keyword>
    </LibraryClass>    
  </LibraryClassDefinitions>
  <SourceFiles>
    <Filename>Ps2Keyboard.c</Filename>
    <Filename>Ps2KbdTextIn.c</Filename>
    <Filename>Ps2KbdCtrller.c</Filename>
    <Filename>Ps2Keyboard.h</Filename>
    <Filename>ComponentName.c</Filename>
  </SourceFiles>
  <PackageDependencies>
    <Package PackageGuid="5e0e9358-46b6-4ae2-8218-4ab8b9bbdcec"/>
    <Package PackageGuid="68169ab0-d41b-4009-9060-292c253ac43d"/>
    <Package PackageGuid="bea835f9-fd62-464a-81ff-f3a806360c6b"/>
  </PackageDependencies>
  <Protocols>
    <Protocol Usage="TO_START">
      <ProtocolCName>gEfiDevicePathProtocolGuid</ProtocolCName>
    </Protocol>
    <Protocol Usage="BY_START">
      <ProtocolCName>gEfiSimpleTextInProtocolGuid</ProtocolCName>
    </Protocol>
    <Protocol Usage="TO_START">
      <ProtocolCName>gEfiIsaIoProtocolGuid</ProtocolCName>
    </Protocol>
    <Protocol Usage="TO_START">
      <ProtocolCName>gEfiPs2PolicyProtocolGuid</ProtocolCName>
    </Protocol>
  </Protocols>
  <Events>
    <CreateEvents>
      <EventTypes Usage="ALWAYS_PRODUCED">
        <EventType>EVENT_TYPE_RELATIVE_TIMER</EventType>
        <HelpText>Set up  event in order to wait for key stroke</HelpText>
      </EventTypes>
      <EventTypes Usage="ALWAYS_PRODUCED">
        <EventType>EVENT_TYPE_PERIODIC_TIMER</EventType>
        <HelpText>Set up a periodic timer to read key strokes at a fixed interval</HelpText>
      </EventTypes>
    </CreateEvents>
    <SignalEvents>
      <EventTypes Usage="SOMETIMES_PRODUCED">
        <EventType>EVENT_TYPE_PERIODIC_TIMER</EventType>
        <HelpText>Signal an event wheneven there is a key pending</HelpText>
      </EventTypes>
    </SignalEvents>
  </Events>
  <Externs>
    <Specification>EFI_SPECIFICATION_VERSION 0x00020000</Specification>
    <Specification>EDK_RELEASE_VERSION 0x00020000</Specification>
    <Extern>
      <DriverBinding>gKeyboardControllerDriver</DriverBinding>
      <ComponentName>gPs2KeyboardComponentName</ComponentName>
    </Extern>
  </Externs>
</ModuleSurfaceArea>