Static interrupts rely on a trick where the _sw_isr_table array is declared with each element in a different .gnu.linkonce section, initially pointing to the spurious IRQ handler. When drivers or apps declare their own interrupts, they override the element with their own containing the real ISR and parameter. However, this only works if the initial declaration of the _sw_isr_table array with the spurious handlers is linked last. App-specific code was being linked later than the core code, causing static interrupts declared in apps not to be installed correctly. If the _sw_isr_table is moved from SOC-specific code to core arch code, interrupts configured under soc/ should still also work. Change-Id: Iec7df47386dfbbf2956a807da27dc8aa6e01b268 Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
6 lines
170 B
Makefile
6 lines
170 B
Makefile
subdir-ccflags-y +=-I$(srctree)/include/drivers
|
|
subdir-ccflags-y +=-I$(srctree)/drivers
|
|
subdir-asflags-y := ${subdir-ccflags-y}
|
|
|
|
obj-y += soc/$(SOC_NAME)/
|
|
obj-y += core/
|