mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-16 07:24:39 +08:00
8e56e6d5bf
Update the r8a7779 IRQ code to make use of the INTC External IRQ pin driver for external interrupt pins IRQ0 -> IRQ3. The r8a7779 SoC can like older SH SoCs configure to use the IRQ0 -> IRQ3 signals as individual interrupts or a combined IRL mode. Without this patch the r8a7779 SoC code does not fully support external IRQ pins in individual IRQ mode. The r8a7779 PFC code does not yet have gpio_to_irq() support so no need to update such code. At this point the DT reference implementations are not covered. In the future such code shall tie in the INTC External IRQ pin driver via DT, so this kind of verbose code is not needed for the long term DT case. Signed-off-by: Magnus Damm <damm@opensource.se> Tested-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
195 lines
4.4 KiB
Plaintext
195 lines
4.4 KiB
Plaintext
if ARCH_SHMOBILE
|
|
|
|
comment "SH-Mobile System Type"
|
|
|
|
config ARCH_SH7372
|
|
bool "SH-Mobile AP4 (SH7372)"
|
|
select ARCH_WANT_OPTIONAL_GPIOLIB
|
|
select ARM_CPU_SUSPEND if PM || CPU_IDLE
|
|
select CPU_V7
|
|
select SH_CLK_CPG
|
|
|
|
config ARCH_SH73A0
|
|
bool "SH-Mobile AG5 (R8A73A00)"
|
|
select ARCH_WANT_OPTIONAL_GPIOLIB
|
|
select ARM_GIC
|
|
select CPU_V7
|
|
select I2C
|
|
select SH_CLK_CPG
|
|
select RENESAS_INTC_IRQPIN
|
|
|
|
config ARCH_R8A7740
|
|
bool "R-Mobile A1 (R8A77400)"
|
|
select ARCH_WANT_OPTIONAL_GPIOLIB
|
|
select CPU_V7
|
|
select SH_CLK_CPG
|
|
|
|
config ARCH_R8A7779
|
|
bool "R-Car H1 (R8A77790)"
|
|
select ARCH_WANT_OPTIONAL_GPIOLIB
|
|
select ARM_GIC
|
|
select CPU_V7
|
|
select SH_CLK_CPG
|
|
select USB_ARCH_HAS_EHCI
|
|
select USB_ARCH_HAS_OHCI
|
|
select RENESAS_INTC_IRQPIN
|
|
|
|
config ARCH_EMEV2
|
|
bool "Emma Mobile EV2"
|
|
select ARCH_WANT_OPTIONAL_GPIOLIB
|
|
select ARM_GIC
|
|
select CPU_V7
|
|
|
|
comment "SH-Mobile Board Type"
|
|
|
|
config MACH_AP4EVB
|
|
bool "AP4EVB board"
|
|
depends on ARCH_SH7372
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
select SH_LCD_MIPI_DSI
|
|
select SND_SOC_AK4642 if SND_SIMPLE_CARD
|
|
|
|
choice
|
|
prompt "AP4EVB LCD panel selection"
|
|
default AP4EVB_QHD
|
|
depends on MACH_AP4EVB
|
|
|
|
config AP4EVB_QHD
|
|
bool "MIPI-DSI QHD (960x540)"
|
|
|
|
config AP4EVB_WVGA
|
|
bool "Parallel WVGA (800x480)"
|
|
|
|
endchoice
|
|
|
|
config MACH_AG5EVM
|
|
bool "AG5EVM board"
|
|
depends on ARCH_SH73A0
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
select SH_LCD_MIPI_DSI
|
|
|
|
config MACH_MACKEREL
|
|
bool "mackerel board"
|
|
depends on ARCH_SH7372
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
select SND_SOC_AK4642 if SND_SIMPLE_CARD
|
|
select USE_OF
|
|
|
|
config MACH_KOTA2
|
|
bool "KOTA2 board"
|
|
depends on ARCH_SH73A0
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
|
|
config MACH_BONITO
|
|
bool "bonito board"
|
|
depends on ARCH_R8A7740
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
|
|
config MACH_ARMADILLO800EVA
|
|
bool "Armadillo-800 EVA board"
|
|
depends on ARCH_R8A7740
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
select SND_SOC_WM8978 if SND_SIMPLE_CARD
|
|
select USE_OF
|
|
|
|
config MACH_MARZEN
|
|
bool "MARZEN board"
|
|
depends on ARCH_R8A7779
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
|
|
config MACH_KZM9D
|
|
bool "KZM9D board"
|
|
depends on ARCH_EMEV2
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
select USE_OF
|
|
|
|
config MACH_KZM9G
|
|
bool "KZM-A9-GT board"
|
|
depends on ARCH_SH73A0
|
|
select ARCH_REQUIRE_GPIOLIB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
select SND_SOC_AK4642 if SND_SIMPLE_CARD
|
|
select USE_OF
|
|
|
|
comment "SH-Mobile System Configuration"
|
|
|
|
config CPU_HAS_INTEVT
|
|
bool
|
|
default y
|
|
|
|
menu "Memory configuration"
|
|
|
|
config MEMORY_START
|
|
hex "Physical memory start address"
|
|
default "0x40000000" if MACH_AP4EVB || MACH_AG5EVM || \
|
|
MACH_MACKEREL || MACH_BONITO || \
|
|
MACH_ARMADILLO800EVA
|
|
default "0x41000000" if MACH_KOTA2
|
|
default "0x00000000"
|
|
---help---
|
|
Tweak this only when porting to a new machine which does not
|
|
already have a defconfig. Changing it from the known correct
|
|
value on any of the known systems will only lead to disaster.
|
|
|
|
config MEMORY_SIZE
|
|
hex "Physical memory size"
|
|
default "0x20000000" if MACH_AG5EVM || MACH_BONITO || \
|
|
MACH_ARMADILLO800EVA
|
|
default "0x1e000000" if MACH_KOTA2
|
|
default "0x10000000" if MACH_AP4EVB || MACH_MACKEREL
|
|
default "0x04000000"
|
|
help
|
|
This sets the default memory size assumed by your kernel. It can
|
|
be overridden as normal by the 'mem=' argument on the kernel command
|
|
line.
|
|
|
|
endmenu
|
|
|
|
menu "Timer and clock configuration"
|
|
|
|
config SHMOBILE_TIMER_HZ
|
|
int "Kernel HZ (jiffies per second)"
|
|
range 32 1024
|
|
default "128"
|
|
help
|
|
Allows the configuration of the timer frequency. It is customary
|
|
to have the timer interrupt run at 1000 Hz or 100 Hz, but in the
|
|
case of low timer frequencies other values may be more suitable.
|
|
SH-Mobile systems using a 32768 Hz RCLK for clock events may want
|
|
to select a HZ value such as 128 that can evenly divide RCLK.
|
|
A HZ value that does not divide evenly may cause timer drift.
|
|
|
|
config SH_TIMER_CMT
|
|
bool "CMT timer driver"
|
|
default y
|
|
help
|
|
This enables build of the CMT timer driver.
|
|
|
|
config SH_TIMER_TMU
|
|
bool "TMU timer driver"
|
|
default y
|
|
help
|
|
This enables build of the TMU timer driver.
|
|
|
|
config EM_TIMER_STI
|
|
bool "STI timer driver"
|
|
default y
|
|
help
|
|
This enables build of the STI timer driver.
|
|
|
|
endmenu
|
|
|
|
config SH_CLK_CPG
|
|
bool
|
|
|
|
source "drivers/sh/Kconfig"
|
|
|
|
endif
|