[PATCH v4 00/12] Tegra114: implement EMC support

Svyatoslav Ryhel posted 12 patches 6 days, 11 hours ago
.../nvidia,tegra124-emc.yaml                  |  174 +-
.../nvidia,tegra124-mc.yaml                   |   31 +-
.../dts/nvidia/tegra114-peripherals-opp.dtsi  |  151 ++
arch/arm/boot/dts/nvidia/tegra114.dtsi        |   55 +
drivers/clk/tegra/clk-tegra114.c              |   39 +-
drivers/devfreq/tegra30-devfreq.c             |   17 +-
drivers/memory/tegra/Kconfig                  |   12 +
drivers/memory/tegra/Makefile                 |    1 +
drivers/memory/tegra/tegra114-emc.c           | 1463 +++++++++++++++++
drivers/memory/tegra/tegra114.c               |  193 +++
drivers/soc/tegra/common.c                    |    5 +-
include/dt-bindings/memory/tegra114-mc.h      |   67 +
12 files changed, 2016 insertions(+), 192 deletions(-)
create mode 100644 arch/arm/boot/dts/nvidia/tegra114-peripherals-opp.dtsi
create mode 100644 drivers/memory/tegra/tegra114-emc.c
[PATCH v4 00/12] Tegra114: implement EMC support
Posted by Svyatoslav Ryhel 6 days, 11 hours ago
Add support for External Memory Controller found in Tegra 4 SoC along
with adjustments required for it to work properly.

Tested on ASUS TF701T (T40X) and Nvidia Tegratab (T40S). Both work fine.

---
Changes in v2:
- fix programming completion detection (changed EMC reg to MC reg reading)
- Tegra114 incorporated into Tegra124 dt-bindings schema

Changes in v3:
- adjusted MC and EMC schema to move description and ref into common property
- added Tegra114 support into devfreq driver
- added MC/EMC to DC interconnections

Changes in v4:
- fix number of EMC clocks required by activity counter transaction
- set minItems/maxItems for MC and EMC registers
- removed CONFIG_TEGRA124_CLK_EMC ifdefs from clk-tegra114
- minimized changes to tegra114_clock_init
- switch to devm_tegra_core_dev_init_opp_table
- switch to readl_poll_timeout_atomic for polling
- adjust DLL_CHANGE logic
- drop touching EMC_CLKCHANGE_SR_ENABLE
- use for_each_child_of_node_scoped for timing iteration
- add emc-mc timing check
- added print for amount of timings and ramcode
- align commit and code style
---

Svyatoslav Ryhel (12):
  devfreq: tegra30-devfreq: add support for Tegra114
  ARM: tegra: Add ACTMON node to Tegra114 device tree
  dt-bindings: memory: Document Tegra114 Memory Controller
  memory: tegra: implement EMEM regs and ICC ops for Tegra114
  dt-bindings: memory: Add Tegra114 memory client IDs
  clk: tegra: set up proper EMC clock implementation for Tegra114
  dt-bindings: memory: Document Tegra114 External Memory Controller
  soc: tegra: common: add Tegra114 support to
    devm_tegra_core_dev_init_opp_table
  memory: tegra: Add Tegra114 EMC driver
  ARM: tegra: Add External Memory Controller node on Tegra114
  ARM: tegra: Add EMC OPP and ICC properties to Tegra114 EMC and ACTMON
    device-tree nodes
  ARM: tegra: add DC interconnections for Tegra114

 .../nvidia,tegra124-emc.yaml                  |  174 +-
 .../nvidia,tegra124-mc.yaml                   |   31 +-
 .../dts/nvidia/tegra114-peripherals-opp.dtsi  |  151 ++
 arch/arm/boot/dts/nvidia/tegra114.dtsi        |   55 +
 drivers/clk/tegra/clk-tegra114.c              |   39 +-
 drivers/devfreq/tegra30-devfreq.c             |   17 +-
 drivers/memory/tegra/Kconfig                  |   12 +
 drivers/memory/tegra/Makefile                 |    1 +
 drivers/memory/tegra/tegra114-emc.c           | 1463 +++++++++++++++++
 drivers/memory/tegra/tegra114.c               |  193 +++
 drivers/soc/tegra/common.c                    |    5 +-
 include/dt-bindings/memory/tegra114-mc.h      |   67 +
 12 files changed, 2016 insertions(+), 192 deletions(-)
 create mode 100644 arch/arm/boot/dts/nvidia/tegra114-peripherals-opp.dtsi
 create mode 100644 drivers/memory/tegra/tegra114-emc.c

-- 
2.51.0
Re: [PATCH v4 00/12] Tegra114: implement EMC support
Posted by Krzysztof Kozlowski 5 days, 14 hours ago
On 25/11/2025 13:05, Svyatoslav Ryhel wrote:
> Add support for External Memory Controller found in Tegra 4 SoC along
> with adjustments required for it to work properly.
> 
> Tested on ASUS TF701T (T40X) and Nvidia Tegratab (T40S). Both work fine.

You mixed here FOUR independent subsystems and without any explanation
of the dependencies it means things are just harder for us to handle for
no reason.

Please split independent subsystems or clearly document the merging
issues/dependencies.

Best regards,
Krzysztof
Re: [PATCH v4 00/12] Tegra114: implement EMC support
Posted by Svyatoslav Ryhel 17 hours ago
ср, 26 лист. 2025 р. о 10:47 Krzysztof Kozlowski <krzk@kernel.org> пише:
>
> On 25/11/2025 13:05, Svyatoslav Ryhel wrote:
> > Add support for External Memory Controller found in Tegra 4 SoC along
> > with adjustments required for it to work properly.
> >
> > Tested on ASUS TF701T (T40X) and Nvidia Tegratab (T40S). Both work fine.
>
> You mixed here FOUR independent subsystems and without any explanation
> of the dependencies it means things are just harder for us to handle for
> no reason.
>
> Please split independent subsystems or clearly document the merging
> issues/dependencies.
>

All commits are independent and subsystem maintainers can pick commits
which are relevant for their domain. No regressions at the build time
nor on the device itself were detected with individual commits picked.
Only device tree changes are preferred to be picked last.

Patchset is made this way to show logic of implementation of EMC
support for Tegra114 since a list of links between fragmented
patchsets will not bring clarity nor it will improve merging
experience.

> Best regards,
> Krzysztof
Re: [PATCH v4 00/12] Tegra114: implement EMC support
Posted by Krzysztof Kozlowski 16 hours ago
On 01/12/2025 07:12, Svyatoslav Ryhel wrote:
> ср, 26 лист. 2025 р. о 10:47 Krzysztof Kozlowski <krzk@kernel.org> пише:
>>
>> On 25/11/2025 13:05, Svyatoslav Ryhel wrote:
>>> Add support for External Memory Controller found in Tegra 4 SoC along
>>> with adjustments required for it to work properly.
>>>
>>> Tested on ASUS TF701T (T40X) and Nvidia Tegratab (T40S). Both work fine.
>>
>> You mixed here FOUR independent subsystems and without any explanation
>> of the dependencies it means things are just harder for us to handle for
>> no reason.
>>
>> Please split independent subsystems or clearly document the merging
>> issues/dependencies.
>>
> 
> All commits are independent and subsystem maintainers can pick commits
> which are relevant for their domain. No regressions at the build time
> nor on the device itself were detected with individual commits picked.
> Only device tree changes are preferred to be picked last.
> 
> Patchset is made this way to show logic of implementation of EMC
> support for Tegra114 since a list of links between fragmented
> patchsets will not bring clarity nor it will improve merging
> experience.

This is clearly not true statement and it is not you who will merged
that. Instead of just applying it with one command, maintainers will
have to use several to find/pick up individual bits.

You received comment, I expect implementing it. I am not going through
this patchset.

Best regards,
Krzysztof