1 /*++ 2 3 Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR> 4 5 6 This program and the accompanying materials are licensed and made available under 7 8 the terms and conditions of the BSD License that accompanies this distribution. 9 10 The full text of the license may be found at 11 12 http://opensource.org/licenses/bsd-license.php. 13 14 15 16 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 17 18 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 19 20 21 22 23 Module Name: 24 25 Speaker.h 26 27 Abstract: 28 29 EFI Speaker Interface Protocol 30 31 32 33 --*/ 34 35 #ifndef _PEI_SPEAKER_IF_H 36 #define _PEI_SPEAKER_IF_H 37 38 // 39 // Global ID Speaker Interface 40 // 41 #define PEI_SPEAKER_INTERFACE_PPI_GUID \ 42 { \ 43 0x30ac275e, 0xbb30, 0x4b84, 0xa1, 0xcd, 0x0a, 0xf1, 0x32, 0x2c, 0x89, 0xc0 \ 44 } 45 46 typedef struct _PEI_SPEAKER_IF_PPI PEI_SPEAKER_IF_PPI; 47 48 // 49 // Beep Code 50 // 51 typedef 52 EFI_STATUS 53 (EFIAPI *EFI_SPEAKER_GENERATE_BEEP) ( 54 IN CONST EFI_PEI_SERVICES **PeiServices, 55 IN UINTN NumberOfBeep, 56 IN UINTN BeepDuration, 57 IN UINTN TimeInterval 58 ); 59 60 // 61 // Set Frequency 62 // 63 typedef 64 EFI_STATUS 65 (EFIAPI *EFI_SPEAKER_SET_FREQUENCY) ( 66 IN CONST EFI_PEI_SERVICES **PeiServices, 67 IN UINT16 Frequency 68 ); 69 70 // 71 // Protocol definition 72 // 73 typedef struct _PEI_SPEAKER_IF_PPI { 74 EFI_SPEAKER_SET_FREQUENCY SetSpeakerToneFrequency; 75 EFI_SPEAKER_GENERATE_BEEP GenerateBeep; 76 } PEI_SPEAKER_IF_PPI; 77 78 extern EFI_GUID gPeiSpeakerInterfacePpiGuid; 79 #endif 80