[PATCH v7 4/9] acpi/arm64: Add GTDT table parse driver
From: Rafael J. Wysocki <hidden>
Date: 2016-07-15 12:06:31
Also in:
linux-acpi, linux-watchdog, lkml
On Friday, July 15, 2016 03:45:05 PM Fu Wei wrote:
Hi Rafael, On 14 July 2016 at 05:43, Rafael J. Wysocki [off-list ref] wrote:quoted
On Wed, Jul 13, 2016 at 11:08 PM, Guenter Roeck [off-list ref] wrote:quoted
On Wed, Jul 13, 2016 at 10:30:37PM +0200, Rafael J. Wysocki wrote:quoted
On Wed, Jul 13, 2016 at 7:53 PM, [off-list ref] wrote:quoted
From: Fu Wei <redacted> This patch adds support for parsing arch timer in GTDT, provides some kernel APIs to parse all the PPIs and always-on info in GTDT and export them. By this driver, we can simplify arm_arch_timer drivers, and separate the ACPI GTDT knowledge from it. Signed-off-by: Fu Wei <redacted> Signed-off-by: Hanjun Guo <redacted> --- drivers/acpi/Kconfig | 5 ++ drivers/acpi/Makefile | 1 + drivers/acpi/arm64/Kconfig | 15 ++++ drivers/acpi/arm64/Makefile | 1 + drivers/acpi/arm64/acpi_gtdt.c | 170 +++++++++++++++++++++++++++++++++++++++++ include/linux/acpi.h | 6 ++ 6 files changed, 198 insertions(+)diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig index b7e2e77..1cdc7d2 100644 --- a/drivers/acpi/Kconfig +++ b/drivers/acpi/Kconfig@@ -521,4 +521,9 @@ config XPOWER_PMIC_OPREGION endif +if ARM64 +source "drivers/acpi/arm64/Kconfig" + +endif + endif # ACPIdiff --git a/drivers/acpi/Makefile b/drivers/acpi/Makefile index 251ce85..1a94ff7 100644 --- a/drivers/acpi/Makefile +++ b/drivers/acpi/Makefile@@ -99,5 +99,6 @@ obj-$(CONFIG_ACPI_EXTLOG) += acpi_extlog.o obj-$(CONFIG_PMIC_OPREGION) += pmic/intel_pmic.o obj-$(CONFIG_CRC_PMIC_OPREGION) += pmic/intel_pmic_crc.o obj-$(CONFIG_XPOWER_PMIC_OPREGION) += pmic/intel_pmic_xpower.o +obj-$(CONFIG_ARM64) += arm64/ video-objs += acpi_video.o video_detect.odiff --git a/drivers/acpi/arm64/Kconfig b/drivers/acpi/arm64/Kconfig new file mode 100644 index 0000000..ff5c253 --- /dev/null +++ b/drivers/acpi/arm64/Kconfig@@ -0,0 +1,15 @@ +# +# ACPI Configuration for ARM64 +# + +menu "The ARM64-specific ACPI Support" + +config ACPI_GTDT + bool "ACPI GTDT table Support"This should depend on ARM64. Also I wonder if it needs to be user-selectable? Wouldn't it be better to enable it by default when building for ARM64 with ACPI?It is currently selected in patch 9, in the watchdog driver's Kconfig entry.Well, it still doesn't have to be user-selectable for that. :-)Actually it is also automatically selected by [PATCH v7 6/9]:
Right. By user-selectable I mean "showing up in a Kconfig configurator tool". It just need not be visible in the configurator IMO.
quoted hunk ↗ jump to hunk
diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig index 47352d2..71d5b30 100644 --- a/drivers/clocksource/Kconfig +++ b/drivers/clocksource/Kconfig@@ -8,6 +8,7 @@ config CLKSRC_OF config CLKSRC_ACPI bool select CLKSRC_PROBE + select ACPI_GTDT if ARM64 config CLKSRC_PROBE boolquoted
quoted
Not sure if I like that; maybe the watchdog driver should depend on it instead ?If the watchdog is not the only user of it (and I don't think it is), it would be better to arrange things this way.There are two user: (1) arm_arch_timer(which will select CLKSRC_ACPI if ACPI, then CLKSRC_ACPI will select ACPI_GTDT if ARM64) So arm_arch_timer will automatically selecte ACPI_GTDT if ARM64 && ACPI (2) sbsa_gwdt (which will select ACPI_GTDT if ACPI in [PATCH v7 9/9]) So sbsa_gwdt will automatically selecte ACPI_GTDT if ARM64 && ACPI && ARM_ARCH_TIMER So ACPI_GTDT is automatically selected by both of two users. But like Timur said before: maybe we just "selecte ACPI_GTDT if ACPI" for ARM64, because ARM64 require GTDT if we use ACPI.
Right. That's the way to do it then and make sbsa_gwdt depend on it instead of selecting it. Thanks, Rafael