hc
2024-03-22 a0752693d998599af469473b8dc239ef973a012f
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
/**
*
*  Copyright (C) 2018, Marvell International Ltd. and its affiliates
*
*  SPDX-License-Identifier: BSD-2-Clause-Patent
*
**/
#ifndef __ARMADA_ICU_LIB_H__
#define __ARMADA_ICU_LIB_H__
 
typedef enum {
  IcuIrqTypeLevel = 0,
  IcuIrqTypeEdge  = 1
} ICU_IRQ_TYPE;
 
typedef struct {
  UINTN IcuId;
  UINTN SpiId;
  ICU_IRQ_TYPE IrqType;
} ICU_IRQ;
 
typedef struct {
  CONST ICU_IRQ   *Map;
  UINTN           Size;
} ICU_CONFIG_ENTRY;
 
typedef struct {
  ICU_CONFIG_ENTRY NonSecure;
  ICU_CONFIG_ENTRY Sei;
  ICU_CONFIG_ENTRY Rei;
} ICU_CONFIG;
 
EFI_STATUS
EFIAPI
ArmadaIcuInitialize (
  VOID
  );
 
#endif /* __ARMADA_ICU_LIB_H__ */