From e070fb743d9d13d9757e633d1bdd1f9c20b2d792 Mon Sep 17 00:00:00 2001 From: Hirokazu Takata Date: Fri, 17 Aug 2007 17:22:15 +0900 Subject: [PATCH] m32r: Define symbols to unify platform-dependent ICU checks On some m32r platforms, cascaded ICUs are used. This patch is required to simplify ei_handler and consolidate platform- dependent ICU check routines. platform ICU/INT1 ICU/INT0 ICU/INT2 -------------- -------- -------- -------- m32104ut o - - m32700ut o o o opsput o o o usrv o - - (others) - - - Signed-off-by: Hitoshi Yamamoto Signed-off-by: Hirokazu Takata --- arch/m32r/Kconfig | 20 ++++++++++++++++++++ include/asm-m32r/m32r.h | 20 ++++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/arch/m32r/Kconfig b/arch/m32r/Kconfig index 8ccf3e47bff8..bd5fe76401f1 100644 --- a/arch/m32r/Kconfig +++ b/arch/m32r/Kconfig @@ -57,9 +57,13 @@ config PLAT_MAPPI config PLAT_USRV bool "uServer" + select PLAT_HAS_INT1ICU config PLAT_M32700UT bool "M32700UT" + select PLAT_HAS_INT0ICU + select PLAT_HAS_INT1ICU + select PLAT_HAS_INT2ICU help The M3T-M32700UT is an evaluation board based on uT-Engine specification. This board has an M32700 (Chaos) evaluation chip. @@ -68,6 +72,9 @@ config PLAT_M32700UT config PLAT_OPSPUT bool "OPSPUT" + select PLAT_HAS_INT0ICU + select PLAT_HAS_INT1ICU + select PLAT_HAS_INT2ICU help The OPSPUT is an evaluation board based on uT-Engine specification. This board has a OPSP-REP chip. @@ -89,6 +96,7 @@ config PLAT_MAPPI3 config PLAT_M32104UT bool "M32104UT" + select PLAT_HAS_INT1ICU help The M3T-M32104UT is an reference board based on uT-Engine specification. This board has a M32104 chip. @@ -149,6 +157,18 @@ config ISA_DUAL_ISSUE depends on CHIP_M32700 || CHIP_OPSP default y +config PLAT_HAS_INT0ICU + bool + default n + +config PLAT_HAS_INT1ICU + bool + default n + +config PLAT_HAS_INT2ICU + bool + default n + config BUS_CLOCK int "Bus Clock [Hz] (integer)" default "70000000" if PLAT_MAPPI diff --git a/include/asm-m32r/m32r.h b/include/asm-m32r/m32r.h index decfc59907c7..214b44b40757 100644 --- a/include/asm-m32r/m32r.h +++ b/include/asm-m32r/m32r.h @@ -22,12 +22,26 @@ #include #include #include +/* for ei_handler:linux/arch/m32r/kernel/entry.S */ +#define M32R_INT1ICU_ISTS PLD_ICUISTS +#define M32R_INT1ICU_IRQ_BASE M32700UT_PLD_IRQ_BASE +#define M32R_INT0ICU_ISTS M32700UT_LAN_ICUISTS +#define M32R_INT0ICU_IRQ_BASE M32700UT_LAN_PLD_IRQ_BASE +#define M32R_INT2ICU_ISTS M32700UT_LCD_ICUISTS +#define M32R_INT2ICU_IRQ_BASE M32700UT_LCD_PLD_IRQ_BASE #endif /* CONFIG_PLAT_M32700UT */ #if defined(CONFIG_PLAT_OPSPUT) #include #include #include +/* for ei_handler:linux/arch/m32r/kernel/entry.S */ +#define M32R_INT1ICU_ISTS PLD_ICUISTS +#define M32R_INT1ICU_IRQ_BASE OPSPUT_PLD_IRQ_BASE +#define M32R_INT0ICU_ISTS OPSPUT_LAN_ICUISTS +#define M32R_INT0ICU_IRQ_BASE OPSPUT_LAN_PLD_IRQ_BASE +#define M32R_INT2ICU_ISTS OPSPUT_LCD_ICUISTS +#define M32R_INT2ICU_IRQ_BASE OPSPUT_LCD_PLD_IRQ_BASE #endif /* CONFIG_PLAT_OPSPUT */ #if defined(CONFIG_PLAT_MAPPI2) @@ -40,10 +54,16 @@ #if defined(CONFIG_PLAT_USRV) #include +/* for ei_handler:linux/arch/m32r/kernel/entry.S */ +#define M32R_INT1ICU_ISTS PLD_ICUISTS +#define M32R_INT1ICU_IRQ_BASE M32700UT_PLD_IRQ_BASE #endif #if defined(CONFIG_PLAT_M32104UT) #include +/* for ei_handler:linux/arch/m32r/kernel/entry.S */ +#define M32R_INT1ICU_ISTS PLD_ICUISTS +#define M32R_INT1ICU_IRQ_BASE M32104UT_PLD_IRQ_BASE #endif /* CONFIG_PLAT_M32104 */ /* -- 2.30.2