1 /*++ 2 3 Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR> 4 5 This program and the accompanying materials are licensed and made available under 7 the terms and conditions of the BSD License that accompanies this distribution. 9 The full text of the license may be found at 11 http://opensource.org/licenses/bsd-license.php. 13 15 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 17 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 19 21 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