All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 00/14] Add EMC scaling support for Tegra210
@ 2020-04-09 17:52 ` Thierry Reding
  0 siblings, 0 replies; 163+ messages in thread
From: Thierry Reding @ 2020-04-09 17:52 UTC (permalink / raw)
  To: Thierry Reding, Rob Herring
  Cc: Jon Hunter, Dmitry Osipenko, Michael Turquette, Stephen Boyd,
	Joseph Lo, linux-tegra-u79uwXL29TY76Z2rM5mHXA,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-clk-u79uwXL29TY76Z2rM5mHXA,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r

From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>

This series introduces the EMC clock scaling support for Tegra210. The
EMC table of supported frequencies is passed to the kernel via a device
tree reserved memory region.

Joseph posted the v4 of this series[0] about a year ago. I've dusted it
off a bit and tried to address all of the comments that Dmitry had made
in response to v4.

Changes in v6:
- add support for derated tables which are used under high temperatures
- add patches to support memory-region-names property in DT
- address review comments

Changes in v5:
- major rework to split this into a clk driver and an EMC driver
- refactored some code to remove duplication and improve readability
- removed some unused code and variables

Thierry

[0]: https://lore.kernel.org/linux-arm-kernel/20190529082139.5581-1-josephl-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org/

Joseph Lo (8):
  clk: tegra: Add PLLP_UD and PLLMB_UD for Tegra210
  clk: tegra: Export functions for EMC clock scaling
  clk: tegra: Implement Tegra210 EMC clock
  dt-bindings: memory: tegra: Add external memory controller binding for
    Tegra210
  memory: tegra: Add EMC scaling support code for Tegra210
  memory: tegra: Add EMC scaling sequence code for Tegra210
  arm64: tegra: Add external memory controller node for Tegra210
  clk: tegra: Remove the old emc_mux clock for Tegra210

Thierry Reding (6):
  dt-bindings: reserved-memory: Introduce memory-region-names
  of: reserved-memory: Support lookup of regions by name
  of: reserved-memory: Support multiple regions per device
  clk: tegra: Rename Tegra124 EMC clock source file
  memory: tegra: Support derated timings on Tegra210
  arm64: tegra: Hook up EMC cooling device

 .../nvidia,tegra210-emc.yaml                  |   82 +
 .../reserved-memory/reserved-memory.txt       |    2 +
 arch/arm64/boot/dts/nvidia/tegra210.dtsi      |   37 +-
 drivers/clk/tegra/Makefile                    |    3 +-
 .../tegra/{clk-emc.c => clk-tegra124-emc.c}   |    0
 drivers/clk/tegra/clk-tegra210-emc.c          |  369 +++
 drivers/clk/tegra/clk-tegra210.c              |   87 +-
 drivers/clk/tegra/clk.h                       |    3 +
 drivers/memory/tegra/Kconfig                  |   14 +
 drivers/memory/tegra/Makefile                 |    4 +
 drivers/memory/tegra/mc.h                     |    1 +
 drivers/memory/tegra/tegra210-emc-cc-r21021.c | 1744 ++++++++++++++
 drivers/memory/tegra/tegra210-emc-core.c      | 2099 +++++++++++++++++
 drivers/memory/tegra/tegra210-emc-table.c     |   94 +
 drivers/memory/tegra/tegra210-emc.h           | 1023 ++++++++
 drivers/memory/tegra/tegra210-mc.h            |   49 +
 drivers/of/of_reserved_mem.c                  |   41 +-
 include/dt-bindings/clock/tegra210-car.h      |    4 +-
 include/linux/clk/tegra.h                     |   27 +
 include/linux/of_reserved_mem.h               |   11 +
 20 files changed, 5656 insertions(+), 38 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/memory-controllers/nvidia,tegra210-emc.yaml
 rename drivers/clk/tegra/{clk-emc.c => clk-tegra124-emc.c} (100%)
 create mode 100644 drivers/clk/tegra/clk-tegra210-emc.c
 create mode 100644 drivers/memory/tegra/tegra210-emc-cc-r21021.c
 create mode 100644 drivers/memory/tegra/tegra210-emc-core.c
 create mode 100644 drivers/memory/tegra/tegra210-emc-table.c
 create mode 100644 drivers/memory/tegra/tegra210-emc.h
 create mode 100644 drivers/memory/tegra/tegra210-mc.h

-- 
2.24.1

^ permalink raw reply	[flat|nested] 163+ messages in thread

end of thread, other threads:[~2020-04-16  0:58 UTC | newest]

Thread overview: 163+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-09 17:52 [PATCH v6 00/14] Add EMC scaling support for Tegra210 Thierry Reding
2020-04-09 17:52 ` Thierry Reding
2020-04-09 17:52 ` Thierry Reding
2020-04-09 17:52 ` [PATCH v6 02/14] of: reserved-memory: Support lookup of regions by name Thierry Reding
2020-04-09 17:52   ` Thierry Reding
     [not found]   ` <20200409175238.3586487-3-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-15 16:24     ` Rob Herring
2020-04-15 16:24       ` Rob Herring
2020-04-15 16:24       ` Rob Herring
2020-04-15 23:35       ` Thierry Reding
2020-04-15 23:35         ` Thierry Reding
2020-04-16  0:58         ` Rob Herring
2020-04-16  0:58           ` Rob Herring
2020-04-16  0:58           ` Rob Herring
2020-04-09 17:52 ` [PATCH v6 03/14] of: reserved-memory: Support multiple regions per device Thierry Reding
2020-04-09 17:52   ` Thierry Reding
     [not found]   ` <20200409175238.3586487-4-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-15 16:25     ` Rob Herring
2020-04-15 16:25       ` Rob Herring
2020-04-15 16:25       ` Rob Herring
2020-04-09 17:52 ` [PATCH v6 05/14] clk: tegra: Add PLLP_UD and PLLMB_UD for Tegra210 Thierry Reding
2020-04-09 17:52   ` Thierry Reding
2020-04-09 17:52 ` [PATCH v6 06/14] clk: tegra: Export functions for EMC clock scaling Thierry Reding
2020-04-09 17:52   ` Thierry Reding
2020-04-09 17:52 ` [PATCH v6 08/14] dt-bindings: memory: tegra: Add external memory controller binding for Tegra210 Thierry Reding
2020-04-09 17:52   ` Thierry Reding
     [not found]   ` <20200409175238.3586487-9-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-15 16:27     ` Rob Herring
2020-04-15 16:27       ` Rob Herring
2020-04-15 16:27       ` Rob Herring
2020-04-09 17:52 ` [PATCH v6 09/14] memory: tegra: Add EMC scaling support code " Thierry Reding
2020-04-09 17:52   ` Thierry Reding
2020-04-09 19:00   ` Dmitry Osipenko
2020-04-09 19:00     ` Dmitry Osipenko
     [not found]     ` <7b2f8a7c-94f1-08d0-b0ce-c61f4eb0a436-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 14:45       ` Thierry Reding
2020-04-14 14:45         ` Thierry Reding
2020-04-14 14:45         ` Thierry Reding
     [not found]   ` <20200409175238.3586487-10-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-09 19:16     ` Dmitry Osipenko
2020-04-09 19:16       ` Dmitry Osipenko
2020-04-09 19:16       ` Dmitry Osipenko
     [not found]       ` <a9afb1b5-3141-4923-c7fa-194228081e1b-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 14:54         ` Thierry Reding
2020-04-14 14:54           ` Thierry Reding
2020-04-14 14:54           ` Thierry Reding
2020-04-14 20:50           ` Dmitry Osipenko
2020-04-14 20:50             ` Dmitry Osipenko
2020-04-14 20:50             ` Dmitry Osipenko
2020-04-09 23:56     ` Dmitry Osipenko
2020-04-09 23:56       ` Dmitry Osipenko
2020-04-09 23:56       ` Dmitry Osipenko
     [not found]       ` <3e518dfa-cb3d-e2ce-a9b8-5e143e02fc61-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-11 20:39         ` Dmitry Osipenko
2020-04-11 20:39           ` Dmitry Osipenko
2020-04-11 20:39           ` Dmitry Osipenko
2020-04-14 15:05           ` Thierry Reding
2020-04-14 15:05             ` Thierry Reding
2020-04-14 15:32             ` Dmitry Osipenko
2020-04-14 15:32               ` Dmitry Osipenko
2020-04-14 15:02         ` Thierry Reding
2020-04-14 15:02           ` Thierry Reding
2020-04-14 15:02           ` Thierry Reding
2020-04-10 14:25     ` Dmitry Osipenko
2020-04-10 14:25       ` Dmitry Osipenko
2020-04-10 14:25       ` Dmitry Osipenko
2020-04-14 15:08       ` Thierry Reding
2020-04-14 15:08         ` Thierry Reding
2020-04-10 14:26     ` Dmitry Osipenko
2020-04-10 14:26       ` Dmitry Osipenko
2020-04-10 14:26       ` Dmitry Osipenko
     [not found]       ` <14cfd13a-5fde-f167-64cb-a61cba119a97-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 15:39         ` Thierry Reding
2020-04-14 15:39           ` Thierry Reding
2020-04-14 15:39           ` Thierry Reding
2020-04-10 20:46     ` Dmitry Osipenko
2020-04-10 20:46       ` Dmitry Osipenko
2020-04-10 20:46       ` Dmitry Osipenko
     [not found]       ` <fae8e1f5-753b-b2ce-d14f-c6e8b2061fdd-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 15:41         ` Thierry Reding
2020-04-14 15:41           ` Thierry Reding
2020-04-14 15:41           ` Thierry Reding
2020-04-14 20:39     ` Dmitry Osipenko
2020-04-14 20:39       ` Dmitry Osipenko
2020-04-14 20:39       ` Dmitry Osipenko
2020-04-14 20:46     ` Dmitry Osipenko
2020-04-14 20:46       ` Dmitry Osipenko
2020-04-14 20:46       ` Dmitry Osipenko
2020-04-14 20:56       ` Dmitry Osipenko
2020-04-14 20:56         ` Dmitry Osipenko
2020-04-09 17:52 ` [PATCH v6 10/14] memory: tegra: Add EMC scaling sequence " Thierry Reding
2020-04-09 17:52   ` Thierry Reding
     [not found]   ` <20200409175238.3586487-11-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-10 14:18     ` Dmitry Osipenko
2020-04-10 14:18       ` Dmitry Osipenko
2020-04-10 14:18       ` Dmitry Osipenko
2020-04-14 15:45       ` Thierry Reding
2020-04-14 15:45         ` Thierry Reding
2020-04-14 16:27         ` Dmitry Osipenko
2020-04-14 16:27           ` Dmitry Osipenko
2020-04-14 16:27           ` Dmitry Osipenko
     [not found]           ` <e050baee-89cb-dba1-544e-77b1662ac6b7-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 20:03             ` Thierry Reding
2020-04-14 20:03               ` Thierry Reding
2020-04-14 20:03               ` Thierry Reding
     [not found] ` <20200409175238.3586487-1-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-09 17:52   ` [PATCH v6 01/14] dt-bindings: reserved-memory: Introduce memory-region-names Thierry Reding
2020-04-09 17:52     ` Thierry Reding
2020-04-09 17:52     ` Thierry Reding
     [not found]     ` <20200409175238.3586487-2-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-15 16:23       ` Rob Herring
2020-04-15 16:23         ` Rob Herring
2020-04-15 16:23         ` Rob Herring
2020-04-09 17:52   ` [PATCH v6 04/14] clk: tegra: Rename Tegra124 EMC clock source file Thierry Reding
2020-04-09 17:52     ` Thierry Reding
2020-04-09 17:52     ` Thierry Reding
     [not found]     ` <20200409175238.3586487-5-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 16:48       ` Dmitry Osipenko
2020-04-14 16:48         ` Dmitry Osipenko
2020-04-14 16:48         ` Dmitry Osipenko
     [not found]         ` <a7209708-6e67-5885-5935-2db3d92174e8-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 17:14           ` Thierry Reding
2020-04-14 17:14             ` Thierry Reding
2020-04-14 17:14             ` Thierry Reding
2020-04-09 17:52   ` [PATCH v6 07/14] clk: tegra: Implement Tegra210 EMC clock Thierry Reding
2020-04-09 17:52     ` Thierry Reding
2020-04-09 17:52     ` Thierry Reding
     [not found]     ` <20200409175238.3586487-8-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-09 18:24       ` Dmitry Osipenko
2020-04-09 18:24         ` Dmitry Osipenko
2020-04-09 18:24         ` Dmitry Osipenko
     [not found]         ` <8dc000fb-8867-cf8f-8204-a9e1e79a4811-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 14:34           ` Thierry Reding
2020-04-14 14:34             ` Thierry Reding
2020-04-14 14:34             ` Thierry Reding
2020-04-14 15:18             ` Dmitry Osipenko
2020-04-14 15:18               ` Dmitry Osipenko
2020-04-14 15:18               ` Dmitry Osipenko
     [not found]               ` <92eb73ba-73e4-f9f1-bb22-9b515e32cee6-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 17:10                 ` Thierry Reding
2020-04-14 17:10                   ` Thierry Reding
2020-04-14 17:10                   ` Thierry Reding
2020-04-14 20:22                   ` Dmitry Osipenko
2020-04-14 20:22                     ` Dmitry Osipenko
2020-04-14 20:22                     ` Dmitry Osipenko
2020-04-10 20:49       ` Dmitry Osipenko
2020-04-10 20:49         ` Dmitry Osipenko
2020-04-10 20:49         ` Dmitry Osipenko
     [not found]         ` <0e040cf9-56cf-dd44-3523-ff4c82fb1f2c-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 14:36           ` Thierry Reding
2020-04-14 14:36             ` Thierry Reding
2020-04-14 14:36             ` Thierry Reding
2020-04-09 17:52   ` [PATCH v6 11/14] memory: tegra: Support derated timings on Tegra210 Thierry Reding
2020-04-09 17:52     ` Thierry Reding
2020-04-09 17:52     ` Thierry Reding
     [not found]     ` <20200409175238.3586487-12-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-09 23:44       ` Dmitry Osipenko
2020-04-09 23:44         ` Dmitry Osipenko
2020-04-09 23:44         ` Dmitry Osipenko
2020-04-14 15:47         ` Thierry Reding
2020-04-14 15:47           ` Thierry Reding
2020-04-14 16:25           ` Dmitry Osipenko
2020-04-14 16:25             ` Dmitry Osipenko
2020-04-14 16:25             ` Dmitry Osipenko
2020-04-10 14:28       ` Dmitry Osipenko
2020-04-10 14:28         ` Dmitry Osipenko
2020-04-10 14:28         ` Dmitry Osipenko
     [not found]         ` <937a1aa6-473a-f6c5-729a-4f34e4ee3abb-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 16:29           ` Thierry Reding
2020-04-14 16:29             ` Thierry Reding
2020-04-14 16:29             ` Thierry Reding
2020-04-14 16:40     ` Dmitry Osipenko
2020-04-14 16:40       ` Dmitry Osipenko
     [not found]       ` <543bfc3b-2bb9-01d3-62da-89d1f0b18a5b-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2020-04-14 16:48         ` Thierry Reding
2020-04-14 16:48           ` Thierry Reding
2020-04-14 16:48           ` Thierry Reding
2020-04-09 17:52   ` [PATCH v6 12/14] arm64: tegra: Add external memory controller node for Tegra210 Thierry Reding
2020-04-09 17:52     ` Thierry Reding
2020-04-09 17:52     ` Thierry Reding
2020-04-09 17:52   ` [PATCH v6 13/14] arm64: tegra: Hook up EMC cooling device Thierry Reding
2020-04-09 17:52     ` Thierry Reding
2020-04-09 17:52     ` Thierry Reding
2020-04-09 17:52 ` [PATCH v6 14/14] clk: tegra: Remove the old emc_mux clock for Tegra210 Thierry Reding
2020-04-09 17:52   ` Thierry Reding

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.