irq: rv32m1: Fixup IRQ values for multi-level IRQ handling
Remove the handcoded multi-level IRQ values in device tree. We now are able to generate the encoded multi-level IRQ value. Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
This commit is contained in:
parent
d6e6a2be38
commit
2c1e0439c7
3 changed files with 24 additions and 45 deletions
|
@ -93,17 +93,17 @@
|
|||
|
||||
&lptmr0 {
|
||||
interrupt-parent = <&intmux0_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 7)>;
|
||||
interrupts = <7>;
|
||||
};
|
||||
|
||||
&lptmr1 {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 8)>;
|
||||
interrupts = <8>;
|
||||
};
|
||||
|
||||
&lptmr2 {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 22)>;
|
||||
interrupts = <22>;
|
||||
};
|
||||
|
||||
&gpioa {
|
||||
|
@ -113,22 +113,22 @@
|
|||
|
||||
&gpiob {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 15)>;
|
||||
interrupts = <15>;
|
||||
};
|
||||
|
||||
&gpioc {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 16)>;
|
||||
interrupts = <16>;
|
||||
};
|
||||
|
||||
&gpiod {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 17)>;
|
||||
interrupts = <17>;
|
||||
};
|
||||
|
||||
&gpioe {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 27)>;
|
||||
interrupts = <27>;
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
|
@ -138,17 +138,17 @@
|
|||
|
||||
&uart1 {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 13)>;
|
||||
interrupts = <13>;
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 14)>;
|
||||
interrupts = <14>;
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 26)>;
|
||||
interrupts = <26>;
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
|
@ -163,10 +163,10 @@
|
|||
|
||||
&i2c2 {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 11)>;
|
||||
interrupts = <11>;
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
interrupt-parent = <&intmux0_ch1>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH1, 24)>;
|
||||
interrupts = <24>;
|
||||
};
|
||||
|
|
|
@ -92,12 +92,12 @@
|
|||
|
||||
&lptmr0 {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 6)>;
|
||||
interrupts = <6>;
|
||||
};
|
||||
|
||||
&lptmr1 {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 7)>;
|
||||
interrupts = <7>;
|
||||
};
|
||||
|
||||
&lptmr2 {
|
||||
|
@ -107,22 +107,22 @@
|
|||
|
||||
&gpioa {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 25)>;
|
||||
interrupts = <25>;
|
||||
};
|
||||
|
||||
&gpiob {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 26)>;
|
||||
interrupts = <26>;
|
||||
};
|
||||
|
||||
&gpioc {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 27)>;
|
||||
interrupts = <27>;
|
||||
};
|
||||
|
||||
&gpiod {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 28)>;
|
||||
interrupts = <28>;
|
||||
};
|
||||
|
||||
&gpioe {
|
||||
|
@ -132,17 +132,17 @@
|
|||
|
||||
&uart0 {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 21)>;
|
||||
interrupts = <21>;
|
||||
};
|
||||
|
||||
&uart1 {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 22)>;
|
||||
interrupts = <22>;
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 23)>;
|
||||
interrupts = <23>;
|
||||
};
|
||||
|
||||
&uart3 {
|
||||
|
@ -152,17 +152,17 @@
|
|||
|
||||
&i2c0 {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 13)>;
|
||||
interrupts = <13>;
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 14)>;
|
||||
interrupts = <14>;
|
||||
};
|
||||
|
||||
&i2c2 {
|
||||
interrupt-parent = <&intmux1_ch0>;
|
||||
interrupts = <INTMUX_LEVEL2_IRQ(INTMUX_CH0, 15)>;
|
||||
interrupts = <15>;
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
|
|
|
@ -7,19 +7,6 @@
|
|||
#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_INTERRUPT_CONTROLLER_OPENISA_INTMUX_H_
|
||||
#define ZEPHYR_INCLUDE_DT_BINDINGS_INTERRUPT_CONTROLLER_OPENISA_INTMUX_H_
|
||||
|
||||
/*
|
||||
* Symbols for intmux channels, for DT readability when using
|
||||
* INTMUX_LEVEL2_IRQ().
|
||||
*/
|
||||
#define INTMUX_CH0 0
|
||||
#define INTMUX_CH1 1
|
||||
#define INTMUX_CH2 2
|
||||
#define INTMUX_CH3 3
|
||||
#define INTMUX_CH4 4
|
||||
#define INTMUX_CH5 5
|
||||
#define INTMUX_CH6 6
|
||||
#define INTMUX_CH7 7
|
||||
|
||||
/*
|
||||
* Level 1 IRQ offsets for each INTMUX channel.
|
||||
*/
|
||||
|
@ -32,12 +19,4 @@
|
|||
#define INTMUX_CH6_IRQ 30
|
||||
#define INTMUX_CH7_IRQ 31
|
||||
|
||||
/*
|
||||
* Multi-level IRQ number for a INTMUX channel/line interrupt.
|
||||
*
|
||||
* See gen_isr_tables.py for details.
|
||||
*/
|
||||
#define INTMUX_LEVEL2_IRQ(channel, line) \
|
||||
((((line) + 1) << 8) | ((channel) + INTMUX_CH0_IRQ))
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue