xref: /rk3399_ARM-atf/plat/arm/board/fvp/gicv5_config.yaml (revision e394a717aec18c3f11737a9765f4bd93a2ca7e8c)
1*9a099b51SBoyan Karatotev---
2*9a099b51SBoyan Karatotevname: gicv5_config
3*9a099b51SBoyan Karatotevversion: 1
4*9a099b51SBoyan Karatotev
5*9a099b51SBoyan KaratotevGIC_TOP:
6*9a099b51SBoyan Karatotev  - pa_range: 6 # 0b0110   52 bits, 4PB (should match the 'System' PA size)
7*9a099b51SBoyan Karatotev
8*9a099b51SBoyan Karatotev    IWB:
9*9a099b51SBoyan Karatotev      - name: "iwb0"
10*9a099b51SBoyan Karatotev        config_frame_base_address: 0x2F000000
11*9a099b51SBoyan Karatotev        target_itsid: 0
12*9a099b51SBoyan Karatotev        num_wires: 64        # 16 bit value
13*9a099b51SBoyan Karatotev        device_id: 64        # 16 bit value
14*9a099b51SBoyan Karatotev        domains: 7
15*9a099b51SBoyan Karatotev        iwb_id: 0
16*9a099b51SBoyan Karatotev
17*9a099b51SBoyan Karatotev    ITS:
18*9a099b51SBoyan Karatotev      - name: "its0"
19*9a099b51SBoyan Karatotev        itsid: 0
20*9a099b51SBoyan Karatotev        target_irsid: 0
21*9a099b51SBoyan Karatotev        # The maximum permitted value of this field is 32 (dec).
22*9a099b51SBoyan Karatotev        device_id_bits: 20
23*9a099b51SBoyan Karatotev        # The maximum permitted value of this field is 32 (dec).
24*9a099b51SBoyan Karatotev        event_id_bits: 0x10
25*9a099b51SBoyan Karatotev        # 0b00 - linear DT only. 0b01 linear and 2-level DT supported.
26*9a099b51SBoyan Karatotev        device_table_levels: 0x01
27*9a099b51SBoyan Karatotev        # 0b00 - linear ITT only. 0b01 linear and 2-level ITT supported.
28*9a099b51SBoyan Karatotev        interrupt_translation_table_levels: 0x01
29*9a099b51SBoyan Karatotev        has_swerr_reporting: false
30*9a099b51SBoyan Karatotev        domains:
31*9a099b51SBoyan Karatotev            - type: Non_Secure
32*9a099b51SBoyan Karatotev              config_frame_base_address: 0x2F120000
33*9a099b51SBoyan Karatotev              translate_frame_base_addresses: [0x2F130000]
34*9a099b51SBoyan Karatotev            - type: Secure
35*9a099b51SBoyan Karatotev              config_frame_base_address: 0x2F100000
36*9a099b51SBoyan Karatotev              translate_frame_base_addresses: [0x2F110000]
37*9a099b51SBoyan Karatotev            - type: EL3
38*9a099b51SBoyan Karatotev              config_frame_base_address: 0x2F140000
39*9a099b51SBoyan Karatotev              translate_frame_base_addresses: [0x2F150000]
40*9a099b51SBoyan Karatotev
41*9a099b51SBoyan Karatotev    IRS:
42*9a099b51SBoyan Karatotev      COMMON:
43*9a099b51SBoyan Karatotev      # SPI range supported across all the IRSs.
44*9a099b51SBoyan Karatotev        spi_range: 256
45*9a099b51SBoyan Karatotev        # Implement set LPI register frame.
46*9a099b51SBoyan Karatotev        support_setlpi_frame: true
47*9a099b51SBoyan Karatotev        # The minimum number of LPI ID Bits supported. (The maximum value
48*9a099b51SBoyan Karatotev        # supported for this field is 14.)
49*9a099b51SBoyan Karatotev        min_lpi_id_bits: 0
50*9a099b51SBoyan Karatotev        # The maximum number of LPI ID Bits supported. (The maximum value
51*9a099b51SBoyan Karatotev        # supported for this field is 24.)
52*9a099b51SBoyan Karatotev        max_lpi_id_bits: 24
53*9a099b51SBoyan Karatotev        # Levels supported for the IST, possible values [1 - 2], '1' is the
54*9a099b51SBoyan Karatotev        # default, '2' means 2-level structure is supported.
55*9a099b51SBoyan Karatotev        ist_levels: 2
56*9a099b51SBoyan Karatotev        # Reports whether the IRS stores metadata in the level 2 ISTEs,
57*9a099b51SBoyan Karatotev        # default is 'false' which means that IST entries don't require storage
58*9a099b51SBoyan Karatotev        # for metadata.
59*9a099b51SBoyan Karatotev        istmd: false
60*9a099b51SBoyan Karatotev        # Supported split values when a 2-level IST structure is used. possible
61*9a099b51SBoyan Karatotev        # values are from 1 to 7, '1' is default means Level 2 IST sizes
62*9a099b51SBoyan Karatotev        # supported: 4KB
63*9a099b51SBoyan Karatotev        ist_splits: 7
64*9a099b51SBoyan Karatotev        # Minimum number of LPI ID bits which requires a level 2 ISTE size of 16
65*9a099b51SBoyan Karatotev        # bytes to store metadata.
66*9a099b51SBoyan Karatotev        istmd_sz: 0
67*9a099b51SBoyan Karatotev      INSTANCES:
68*9a099b51SBoyan Karatotev        - name: "irs0"
69*9a099b51SBoyan Karatotev          irsid: 0
70*9a099b51SBoyan Karatotev          # SPI range supported for this IRS instance.
71*9a099b51SBoyan Karatotev          spi_irs_range: 256
72*9a099b51SBoyan Karatotev          # The minimum SPI ID implemented for this IRS instance.
73*9a099b51SBoyan Karatotev          spi_base: 0
74*9a099b51SBoyan Karatotev          domains:
75*9a099b51SBoyan Karatotev            - config_frame_base_address: 0x2F1A0000
76*9a099b51SBoyan Karatotev              lpi_frame_base_address: 0x2F1B0000
77*9a099b51SBoyan Karatotev              type: Non_Secure
78*9a099b51SBoyan Karatotev            - config_frame_base_address: 0x2F180000
79*9a099b51SBoyan Karatotev              lpi_frame_base_address: 0x2F190000
80*9a099b51SBoyan Karatotev              type: Secure
81*9a099b51SBoyan Karatotev            - config_frame_base_address: 0x2F1C0000
82*9a099b51SBoyan Karatotev              lpi_frame_base_address: 0x2F1D0000
83*9a099b51SBoyan Karatotev              type: EL3
84*9a099b51SBoyan Karatotev          # The affinities of the PEs connected to this IRS instance
85*9a099b51SBoyan Karatotev          # [ the order should be matching the platform connections in the LISA
86*9a099b51SBoyan Karatotev          #   file].
87*9a099b51SBoyan Karatotev          processing_element_affinities: [0, 1, 2, 3, 4, 5, 6, 7]
88*9a099b51SBoyan Karatotev
89*9a099b51SBoyan Karatotev
90*9a099b51SBoyan KaratotevCPU_INTERFACE:
91*9a099b51SBoyan Karatotev  # Core ID of the Core implementing the CPUIF (starting from 0)
92*9a099b51SBoyan Karatotev  - core_id: 0
93*9a099b51SBoyan Karatotev    has_gicv5_legacy: false
94*9a099b51SBoyan Karatotev    supported_int_id_bits: 16
95*9a099b51SBoyan Karatotev    # Number of non-architected PPIs to be implemented starting from the PPI ID 64.
96*9a099b51SBoyan Karatotev    number_of_non_arch_ppis_implemented: 0
97*9a099b51SBoyan Karatotev  - core_id: 1
98*9a099b51SBoyan Karatotev    has_gicv5_legacy: false
99*9a099b51SBoyan Karatotev    supported_int_id_bits: 16
100*9a099b51SBoyan Karatotev    number_of_non_arch_ppis_implemented: 0
101*9a099b51SBoyan Karatotev  - core_id: 2
102*9a099b51SBoyan Karatotev    has_gicv5_legacy: false
103*9a099b51SBoyan Karatotev    supported_int_id_bits: 16
104*9a099b51SBoyan Karatotev    number_of_non_arch_ppis_implemented: 0
105*9a099b51SBoyan Karatotev  - core_id: 3
106*9a099b51SBoyan Karatotev    has_gicv5_legacy: false
107*9a099b51SBoyan Karatotev    supported_int_id_bits: 16
108*9a099b51SBoyan Karatotev    number_of_non_arch_ppis_implemented: 0
109*9a099b51SBoyan Karatotev  - core_id: 4
110*9a099b51SBoyan Karatotev    has_gicv5_legacy: false
111*9a099b51SBoyan Karatotev    supported_int_id_bits: 16
112*9a099b51SBoyan Karatotev    number_of_non_arch_ppis_implemented: 0
113*9a099b51SBoyan Karatotev  - core_id: 5
114*9a099b51SBoyan Karatotev    has_gicv5_legacy: false
115*9a099b51SBoyan Karatotev    supported_int_id_bits: 16
116*9a099b51SBoyan Karatotev    number_of_non_arch_ppis_implemented: 0
117*9a099b51SBoyan Karatotev  - core_id: 6
118*9a099b51SBoyan Karatotev    has_gicv5_legacy: false
119*9a099b51SBoyan Karatotev    supported_int_id_bits: 16
120*9a099b51SBoyan Karatotev    number_of_non_arch_ppis_implemented: 0
121*9a099b51SBoyan Karatotev  - core_id: 7
122*9a099b51SBoyan Karatotev    has_gicv5_legacy: false
123*9a099b51SBoyan Karatotev    supported_int_id_bits: 16
124*9a099b51SBoyan Karatotev    number_of_non_arch_ppis_implemented: 0
125