From patchwork Wed Apr 19 16:44:17 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark Rutland X-Patchwork-Id: 97648 Delivered-To: patch@linaro.org Received: by 10.182.246.10 with SMTP id xs10csp355020obc; Wed, 19 Apr 2017 09:45:41 -0700 (PDT) X-Received: by 10.98.198.210 with SMTP id x79mr3863991pfk.224.1492620341032; Wed, 19 Apr 2017 09:45:41 -0700 (PDT) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z62si3255932pgd.263.2017.04.19.09.45.40; Wed, 19 Apr 2017 09:45:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966579AbdDSQpJ (ORCPT + 16 others); Wed, 19 Apr 2017 12:45:09 -0400 Received: from foss.arm.com ([217.140.101.70]:43584 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S966562AbdDSQpG (ORCPT ); Wed, 19 Apr 2017 12:45:06 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 3A3D4CFC; Wed, 19 Apr 2017 09:45:05 -0700 (PDT) Received: from leverpostej.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.72.51.249]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id C3DBD3F4FF; Wed, 19 Apr 2017 09:45:03 -0700 (PDT) From: Mark Rutland To: daniel.lezcano@linaro.org Cc: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, tglx@linutronix.de, fu.wei@linaro.org, lorenzo.pieralisi@arm.com, hanjun.guo@linaro.org, marc.zyngier@arm.com Subject: [GIT PULL 00/16] clocksource: arm_arch_timer: GTDT-based MMIO timer support Date: Wed, 19 Apr 2017 17:44:17 +0100 Message-Id: <1492620273-30037-1-git-send-email-mark.rutland@arm.com> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Daniel, The series enables support for the MMIO architected timers (useful for system-level idle), which need to be probed via the GTDT when using ACPI. I realise this is a little late, but I would very much appreciate if you could pull these arch timer GTDT patches for v4.12. The series has been largely fine for a while now, and the major hold-ups were edge cases in error handling which have now been addressed. The bulk of the series is a refactoring to cleanly separate the core driver, DT probe path, and ACPI probe path. The final patch of the series adds GTDT-based probing of the SBSA watchdog, using the new GTDT probing infrastructure. I've tested the patches on arm and arm64 platforms. The ACPI parts have all been appropriately acked, and it's preferred that these all go through the clocksource tree. The series is based on Marc's arch-timer-errata tag, which is alread in tip/timers/core. Thanks, Mark. The following changes since commit d003d029cea8a28139b4f9b88a36b8fac864f45b: arm64: arch_timer: Add HISILICON_ERRATUM_161010101 ACPI matching data (2017-04-07 11:22:10 +0100) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git tags/arch-timer-gtdt for you to fetch changes up to ca9ae5ec4ef0ed13833b03297ab319676965492c: acpi/arm64: Add SBSA Generic Watchdog support in GTDT driver (2017-04-19 17:00:15 +0100) ---------------------------------------------------------------- arch timer GTDT patches - arch_timer cleanups and refactoring - new common GTDT parser - GTDT-based MMIO arch_timer support - GTDT-based SBSA watchdog support ---------------------------------------------------------------- Fu Wei (16): clocksource: arm_arch_timer: clean up printk usage clocksource: arm_arch_timer: rename type macros clocksource: arm_arch_timer: rename the PPI enum clocksource: arm_arch_timer: move enums and defines to header file clocksource: arm_arch_timer: add a new enum for spi type clocksource: arm_arch_timer: rework PPI selection clocksource: arm_arch_timer: split dt-only rate handling clocksource: arm_arch_timer: refactor arch_timer_needs_probing clocksource: arm_arch_timer: move arch_timer_needs_of_probing into DT init call clocksource: arm_arch_timer: add structs to describe MMIO timer clocksource: arm_arch_timer: split MMIO timer probing. acpi/arm64: Add GTDT table parse driver clocksource: arm_arch_timer: simplify ACPI support code. acpi/arm64: Add memory-mapped timer support in GTDT driver clocksource: arm_arch_timer: add GTDT support for memory-mapped timer acpi/arm64: Add SBSA Generic Watchdog support in GTDT driver arch/arm64/Kconfig | 1 + drivers/acpi/arm64/Kconfig | 3 + drivers/acpi/arm64/Makefile | 1 + drivers/acpi/arm64/gtdt.c | 417 +++++++++++++++++++++++++ drivers/clocksource/arm_arch_timer.c | 573 +++++++++++++++++++++++------------ include/clocksource/arm_arch_timer.h | 34 +++ include/linux/acpi.h | 7 + 7 files changed, 834 insertions(+), 202 deletions(-) create mode 100644 drivers/acpi/arm64/gtdt.c