hc
2024-03-26 e0728245c89800c2038c23308f2d88969d5b41c8
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
/** @file
 
  Copyright (c) 2020, Hisilicon Limited. All rights reserved.<BR>
 
  SPDX-License-Identifier: BSD-2-Clause-Patent
 
**/
 
#ifndef HISI_SAS_CONFIG_H_
#define HISI_SAS_CONFIG_H_
 
typedef struct{
  UINT32                             CtrlId;
  BOOLEAN                            Enable;
  UINT32                             Bar32;
  UINT64                             ResetBase;
  UINTN                              Segment;
  UINTN                              Bus;
  UINTN                              Device;
  UINTN                              Fun;
} SAS_CONTROLLER_DATA;
 
typedef
VOID *
(EFIAPI *HISI_SAS_GET_CONTROLLER_DATA) (
  VOID
  );
 
typedef
EFI_STATUS
(EFIAPI *HISI_SAS_GET_ADDRESS) (
  IN     UINT8 Index,
  IN OUT UINT8 *SasAddrBuffer
  );
 
typedef struct {
  HISI_SAS_GET_ADDRESS GetAddr;
  HISI_SAS_GET_CONTROLLER_DATA GetControllerData;
} HISI_SAS_CONFIG_PROTOCOL;
 
extern EFI_GUID gHisiSasConfigProtocolGuid;
 
#endif