Lines Matching +full:2 +full:nd +full:- +full:level
7 # SPDX-License-Identifier: Apache-2.0
26 Note - this function requires config global variable to be initialized.
57 return (1 << bits) - 1
78 # levels of interrupts in a multi-level interrupt system.
79 # 0x000000FF - represents the 1st level (i.e. the interrupts
81 # 0x0000FF00 - represents the 2nd level (i.e. the interrupts funnel
82 # into 1 line which then goes into the 1st level)
83 # 0x00FF0000 - represents the 3rd level (i.e. the interrupts funnel
84 # into 1 line which then goes into the 2nd level)
97 self.__int_bits[2] = self.get_sym("CONFIG_3RD_LEVEL_INTERRUPT_BITS")
104 … self.__int_lvl_masks[2] = self.__bm(self.int_bits[2]) << (self.int_bits[0] + self.int_bits[1])
106 self.__log.debug("Level Bits Bitmask")
107 self.__log.debug("----------------------------")
116 format(str(i).zfill(2))) for i in
119 self.__log.debug('2nd level offsets: {}'.format(self.__irq2_offsets))
125 format(str(i).zfill(2))) for i in
128 self.__log.debug('3rd level offsets: {}'.format(self.__irq3_offsets))
173 if lvl == 2:
177 self.__log.error("Unsupported irq level: {}".format(lvl))
180 if lvl == 2:
185 self.__log.error("Unsupported irq level: {}".format(lvl))
195 return irq - offset
196 # Calculate index for multi level interrupts
198 irq3 = (irq & self.int_lvl_masks[2]) >> (self.int_bits[0] + self.int_bits[1])
201 # Figure out third level interrupt position
203 list_index = self.get_irq_index(irq2 - 1, 3)
204 irq3_pos = self.get_irq_baseoffset(3) + self.__max_irq_per * list_index + irq3 - 1
208 return irq3_pos - offset
209 # Figure out second level interrupt position
211 list_index = self.get_irq_index(irq1, 2)
212 irq2_pos = self.get_irq_baseoffset(2) + self.__max_irq_per * list_index + irq2 - 1
213 self.__log.debug('IRQ_level = 2')
216 return irq2_pos - offset
217 # Figure out first level interrupt position
221 return irq1 - offset
282 parser.add_argument("-e", "--big-endian", action="store_true",
283 help="Target encodes data in big-endian format (little endian is "
285 parser.add_argument("-d", "--debug", action="store_true",
287 parser.add_argument("-o", "--output-source", required=True,
289 parser.add_argument("-l", "--linker-output-files",
290 nargs=2,
295 parser.add_argument("-k", "--kernel", required=True,
297 parser.add_argument("-s", "--sw-isr-table", action="store_true",
299 parser.add_argument("-V", "--vector-table", action="store_true",
301 parser.add_argument("-i", "--intlist-section", action="append", required=True,