zephyr/scripts/build
Laurentiu Mihalcea 017cf89a83 arch: Add support for static shared interrupts
This commit introduces all the necessary changes for
enabling the usage of shared interrupts.

This works by using a second interrupt table: _shared_sw_isr_table
which keeps track of all of the ISR/arg pairs sharing the same
interrupt line. Whenever a second ISR/arg pair is registered
on the same interrupt line using IRQ_CONNECT(), the entry in
_sw_isr_table will be overwriten by a
(shared_isr, _shared_sw_isr_table[irq]) pair. In turn, shared_isr()
will invoke all of the ISR/arg pairs registered on the same
interrupt line.

This feature only works statically, meaning you can only make use
of shared interrupts using IRQ_CONNECT(). Attempting to dynamically
register a ISR/arg pair will overwrite the hijacked _sw_isr_table
entry.

Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
2023-09-14 08:35:12 +02:00
..
check_init_priorities.py scripts: check_init_priorities: add priority to the file debug print 2023-09-07 09:49:55 +02:00
check_init_priorities_test.py scripts: build: check_init_priorities_test: fix 2023-07-25 15:58:06 +00:00
dir_is_writeable.py scripts: move dir_is_writeable.py to scripts/build 2022-07-12 10:03:45 +02:00
elf_parser.py scripts: build: elf_parser: _DEVICE_STRUCT_HANDLES_OFFSET is optional 2023-09-01 15:50:32 +02:00
file2hex.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
gen_app_partitions.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
gen_cfb_font_header.py scripts: Update CFB font generator 2023-09-13 14:40:00 -07:00
gen_device_deps.py scripts: build: gen_device_deps: s/--dynamic-handles/--dynamic-deps 2023-06-21 09:32:05 +02:00
gen_image_info.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
gen_isr_tables.py arch: Add support for static shared interrupts 2023-09-14 08:35:12 +02:00
gen_kobject_list.py sensor_shell: Update to new sensor_read API 2023-05-26 11:04:54 -05:00
gen_kobject_placeholders.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
gen_offset_header.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
gen_relocate_app.py build: relocation: Fix long command-line invocations 2023-08-01 09:47:57 -07:00
gen_strerror_table.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
gen_strsignal_table.py posix: signal: implement strsignal 2023-07-18 15:35:42 -04:00
gen_syscalls.py scripts: gen_syscalls: rename shadow variables 2023-08-22 17:30:56 -04:00
mergehex.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
parse_syscalls.py scripts: build: parse_syscalls: Fix duplicate paths on windows 2023-06-19 14:57:39 +02:00
process_gperf.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
subfolder_list.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
uf2conv.py treewide: Disable automatic argparse argument shortening 2023-01-26 20:12:36 +09:00
user_wordsize.py scripts: move user_wordsize.py to scripts/build/user_wordsize.py 2022-07-12 10:03:45 +02:00