Unverified Commit 5aa81ab2 authored by Stephen Boyd's avatar Stephen Boyd
Browse files

Merge tag 'tenstorrent-clk-for-v7.1' of...

Merge tag 'tenstorrent-clk-for-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tenstorrent/linux into clk-tenstorrent

Pull Tenstorrent clk driver updates from Drew Fustini:

 - Clock and reset controllers (e.g. PRCM) in the Tenstorrent Atlantis SoC

* tag 'tenstorrent-clk-for-v7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tenstorrent/linux:
  clk: tenstorrent: Add Atlantis clock controller driver
  reset: tenstorrent: Add reset controller for Atlantis
  dt-bindings: clk: tenstorrent: Add tenstorrent,atlantis-prcm-rcpu
parents c3692998 23c8ebc9
Loading
Loading
Loading
Loading
+54 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/clock/tenstorrent,atlantis-prcm-rcpu.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Tenstorrent Atlantis PRCM (Power, Reset, Clock Management) Module

maintainers:
  - Anirudh Srinivasan <asrinivasan@oss.tenstorrent.com>

description:
  Multifunctional register block found in Tenstorrent Atlantis SoC whose main
  function is to control clocks and resets. This block is instantiated multiple
  times in the SoC, each block controls clock and resets for a different
  subsystem. RCPU prcm serves low speed IO interfaces.

properties:
  compatible:
    enum:
      - tenstorrent,atlantis-prcm-rcpu

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  "#clock-cells":
    const: 1
    description:
      See <dt-bindings/clock/tenstorrent,atlantis-prcm-rcpu.h> for valid indices.

  "#reset-cells":
    const: 1

required:
  - compatible
  - reg
  - clocks
  - "#clock-cells"
  - "#reset-cells"

additionalProperties: false

examples:
  - |
    clock-controller@a8000000 {
      compatible = "tenstorrent,atlantis-prcm-rcpu";
      reg = <0xa8000000 0x10000>;
      clocks = <&osc_24m>;
      #clock-cells = <1>;
      #reset-cells = <1>;
    };
+4 −0
Original line number Diff line number Diff line
@@ -22802,8 +22802,12 @@ M: Joel Stanley <jms@oss.tenstorrent.com>
L:	linux-riscv@lists.infradead.org
S:	Maintained
T:	git https://github.com/tenstorrent/linux.git
F:	Documentation/devicetree/bindings/clock/tenstorrent,atlantis-prcm-rcpu.yaml
F:	Documentation/devicetree/bindings/riscv/tenstorrent.yaml
F:	arch/riscv/boot/dts/tenstorrent/
F:	drivers/clk/tenstorrent/
F:	drivers/reset/reset-tenstorrent-atlantis.c
F:	include/dt-bindings/clock/tenstorrent,atlantis-prcm-rcpu.h
RISC-V THEAD SoC SUPPORT
M:	Drew Fustini <fustini@kernel.org>
+1 −0
Original line number Diff line number Diff line
@@ -531,6 +531,7 @@ source "drivers/clk/starfive/Kconfig"
source "drivers/clk/sunxi/Kconfig"
source "drivers/clk/sunxi-ng/Kconfig"
source "drivers/clk/tegra/Kconfig"
source "drivers/clk/tenstorrent/Kconfig"
source "drivers/clk/thead/Kconfig"
source "drivers/clk/stm32/Kconfig"
source "drivers/clk/ti/Kconfig"
+1 −0
Original line number Diff line number Diff line
@@ -155,6 +155,7 @@ obj-y += starfive/
obj-$(CONFIG_ARCH_SUNXI)		+= sunxi/
obj-y					+= sunxi-ng/
obj-$(CONFIG_ARCH_TEGRA)		+= tegra/
obj-y					+= tenstorrent/
obj-$(CONFIG_ARCH_THEAD)		+= thead/
obj-y					+= ti/
obj-$(CONFIG_CLK_UNIPHIER)		+= uniphier/
+14 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only

config TENSTORRENT_ATLANTIS_PRCM
	tristate "Support for Tenstorrent Atlantis PRCM Clock Controller"
	depends on ARCH_TENSTORRENT || COMPILE_TEST
	default ARCH_TENSTORRENT
	select REGMAP_MMIO
	select AUXILIARY_BUS
	select MFD_SYSCON
	help
	  Say yes here to support the different clock
	  controllers found in the Tenstorrent Atlantis SoC.
	  This includes the clocks from the RCPU, HSIO, MMIO
	  and PCIE domain.
Loading