* [PATCH v2 0/2] soc/tegra: pmc: Add Tegra210B01 support
@ 2026-07-20 6:31 Aaron Kling via B4 Relay
2026-07-20 6:31 ` [PATCH v2 1/2] dt-bindings: soc: tegra: pmc: Document Tegra210B01 Aaron Kling via B4 Relay
2026-07-20 6:31 ` [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support Aaron Kling via B4 Relay
0 siblings, 2 replies; 7+ messages in thread
From: Aaron Kling via B4 Relay @ 2026-07-20 6:31 UTC (permalink / raw)
To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
Jonathan Hunter
Cc: Thierry Reding, devicetree, linux-tegra, linux-kernel,
Aaron Kling, Azkali Manad, Thomas Makin
This series adds support for the Tegra210B01 SoC to the Tegra PMC driver
and documents the new compatible.
Signed-off-by: Aaron Kling <webgeek1234@gmail.com>
---
Changes in v2:
- Address sashiko report and drop duplicated structs
- Link to v1: https://lore.kernel.org/r/20260717-t210b01-pmc-v1-0-bf776be8b3a7@gmail.com
---
Aaron Kling (1):
dt-bindings: soc: tegra: pmc: Document Tegra210B01
Azkali Manad (1):
soc/tegra: pmc: Add Tegra210B01 support
.../bindings/soc/tegra/nvidia,tegra20-pmc.yaml | 5 +-
drivers/soc/tegra/pmc.c | 62 ++++++++++++++++++++++
2 files changed, 66 insertions(+), 1 deletion(-)
---
base-commit: 1a1757b76427f6201bfe0bf1bea9f7574f332a93
change-id: 20260713-t210b01-pmc-1a3f8b908044
Best regards,
--
Aaron Kling <webgeek1234@gmail.com>
^ permalink raw reply [flat|nested] 7+ messages in thread* [PATCH v2 1/2] dt-bindings: soc: tegra: pmc: Document Tegra210B01 2026-07-20 6:31 [PATCH v2 0/2] soc/tegra: pmc: Add Tegra210B01 support Aaron Kling via B4 Relay @ 2026-07-20 6:31 ` Aaron Kling via B4 Relay 2026-07-20 13:44 ` Rob Herring (Arm) 2026-07-20 6:31 ` [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support Aaron Kling via B4 Relay 1 sibling, 1 reply; 7+ messages in thread From: Aaron Kling via B4 Relay @ 2026-07-20 6:31 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding, Jonathan Hunter Cc: Thierry Reding, devicetree, linux-tegra, linux-kernel, Aaron Kling From: Aaron Kling <webgeek1234@gmail.com> The PMC in Tegra210B01 is very similar to the one in the original Tegra210, but has a few powergate differences. Document this soc. Signed-off-by: Aaron Kling <webgeek1234@gmail.com> --- Documentation/devicetree/bindings/soc/tegra/nvidia,tegra20-pmc.yaml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/soc/tegra/nvidia,tegra20-pmc.yaml b/Documentation/devicetree/bindings/soc/tegra/nvidia,tegra20-pmc.yaml index f516960dbbefb..8ec36c49f9594 100644 --- a/Documentation/devicetree/bindings/soc/tegra/nvidia,tegra20-pmc.yaml +++ b/Documentation/devicetree/bindings/soc/tegra/nvidia,tegra20-pmc.yaml @@ -18,6 +18,7 @@ properties: - nvidia,tegra114-pmc - nvidia,tegra124-pmc - nvidia,tegra210-pmc + - nvidia,tegra210b01-pmc reg: maxItems: 1 @@ -346,7 +347,9 @@ allOf: properties: compatible: contains: - const: nvidia,tegra210-pmc + enum: + - nvidia,tegra210-pmc + - nvidia,tegra210b01-pmc then: properties: pinmux: -- 2.54.0 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v2 1/2] dt-bindings: soc: tegra: pmc: Document Tegra210B01 2026-07-20 6:31 ` [PATCH v2 1/2] dt-bindings: soc: tegra: pmc: Document Tegra210B01 Aaron Kling via B4 Relay @ 2026-07-20 13:44 ` Rob Herring (Arm) 0 siblings, 0 replies; 7+ messages in thread From: Rob Herring (Arm) @ 2026-07-20 13:44 UTC (permalink / raw) To: Aaron Kling Cc: linux-kernel, Krzysztof Kozlowski, Conor Dooley, Thierry Reding, linux-tegra, Jonathan Hunter, devicetree, Thierry Reding On Mon, 20 Jul 2026 01:31:15 -0500, Aaron Kling wrote: > The PMC in Tegra210B01 is very similar to the one in the original > Tegra210, but has a few powergate differences. Document this soc. > > Signed-off-by: Aaron Kling <webgeek1234@gmail.com> > --- > Documentation/devicetree/bindings/soc/tegra/nvidia,tegra20-pmc.yaml | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > Acked-by: Rob Herring (Arm) <robh@kernel.org> ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support 2026-07-20 6:31 [PATCH v2 0/2] soc/tegra: pmc: Add Tegra210B01 support Aaron Kling via B4 Relay 2026-07-20 6:31 ` [PATCH v2 1/2] dt-bindings: soc: tegra: pmc: Document Tegra210B01 Aaron Kling via B4 Relay @ 2026-07-20 6:31 ` Aaron Kling via B4 Relay 2026-07-20 6:45 ` sashiko-bot 2026-07-21 7:22 ` Mikko Perttunen 1 sibling, 2 replies; 7+ messages in thread From: Aaron Kling via B4 Relay @ 2026-07-20 6:31 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding, Jonathan Hunter Cc: Thierry Reding, devicetree, linux-tegra, linux-kernel, Aaron Kling, Azkali Manad, Thomas Makin From: Azkali Manad <a.ffcc7@gmail.com> The PMC in Tegra210B01 is very similar to the one in the original Tegra210, but has a few powergate differences. Add support for this soc. Signed-off-by: Azkali Manad <a.ffcc7@gmail.com> Co-developed-by: Thomas Makin <halorocker89@gmail.com> Signed-off-by: Thomas Makin <halorocker89@gmail.com> Co-developed-by: Aaron Kling <webgeek1234@gmail.com> Signed-off-by: Aaron Kling <webgeek1234@gmail.com> --- drivers/soc/tegra/pmc.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c index f419a5395545f..48ae4ff3f00db 100644 --- a/drivers/soc/tegra/pmc.c +++ b/drivers/soc/tegra/pmc.c @@ -3897,6 +3897,67 @@ static const struct tegra_pmc_soc tegra210_pmc_soc = { .has_single_mmio_aperture = true, }; +static const char * const tegra210b01_powergates[] = { + [TEGRA_POWERGATE_CPU] = "crail", + [TEGRA_POWERGATE_3D] = "3d", + [TEGRA_POWERGATE_PCIE] = "pcie", + [TEGRA_POWERGATE_MPE] = "mpe", + [TEGRA_POWERGATE_SATA] = "sata", + [TEGRA_POWERGATE_CPU1] = "cpu1", + [TEGRA_POWERGATE_CPU2] = "cpu2", + [TEGRA_POWERGATE_CPU3] = "cpu3", + [TEGRA_POWERGATE_CPU0] = "cpu0", + [TEGRA_POWERGATE_C0NC] = "c0nc", + [TEGRA_POWERGATE_SOR] = "sor", + [TEGRA_POWERGATE_DIS] = "dis", + [TEGRA_POWERGATE_DISB] = "disb", + [TEGRA_POWERGATE_XUSBA] = "xusba", + [TEGRA_POWERGATE_XUSBB] = "xusbb", + [TEGRA_POWERGATE_XUSBC] = "xusbc", + [TEGRA_POWERGATE_VIC] = "vic", + [TEGRA_POWERGATE_IRAM] = "iram", + [TEGRA_POWERGATE_NVDEC] = "nvdec", + [TEGRA_POWERGATE_NVJPG] = "nvjpg", + [TEGRA_POWERGATE_AUD] = "aud", + [TEGRA_POWERGATE_DFD] = "dfd", +}; + +static const struct tegra_pmc_soc tegra210b01_pmc_soc = { + .supports_core_domain = false, + .num_powergates = ARRAY_SIZE(tegra210b01_powergates), + .powergates = tegra210b01_powergates, + .num_cpu_powergates = ARRAY_SIZE(tegra210_cpu_powergates), + .cpu_powergates = tegra210_cpu_powergates, + .has_tsense_reset = true, + .has_gpu_clamps = true, + .needs_mbist_war = false, + .has_io_pad_wren = false, + .maybe_tz_only = true, + .num_io_pads = ARRAY_SIZE(tegra210_io_pads), + .io_pads = tegra210_io_pads, + .num_io_pad_vctrls = ARRAY_SIZE(tegra210_io_pad_vctrls), + .io_pad_vctrls = tegra210_io_pad_vctrls, + .num_pin_descs = ARRAY_SIZE(tegra210_pin_descs), + .pin_descs = tegra210_pin_descs, + .regs = &tegra20_pmc_regs, + .init = tegra20_pmc_init, + .setup_irq_polarity = tegra20_pmc_setup_irq_polarity, + .powergate_set = tegra114_powergate_set, + .irq_set_wake = tegra210_pmc_irq_set_wake, + .irq_set_type = tegra210_pmc_irq_set_type, + .reset_sources = tegra210_reset_sources, + .num_reset_sources = ARRAY_SIZE(tegra210_reset_sources), + .reset_levels = NULL, + .num_reset_levels = 0, + .num_wake_events = ARRAY_SIZE(tegra210_wake_events), + .wake_events = tegra210_wake_events, + .pmc_clks_data = tegra_pmc_clks_data, + .num_pmc_clks = ARRAY_SIZE(tegra_pmc_clks_data), + .has_blink_output = true, + .has_usb_sleepwalk = true, + .has_single_mmio_aperture = true, +}; + static const struct tegra_io_pad_soc tegra186_io_pads[] = { TEGRA_IO_PAD(TEGRA_IO_PAD_CSIA, 0, 0x74, 0x78, "csia"), TEGRA_IO_PAD(TEGRA_IO_PAD_CSIB, 1, 0x74, 0x78, "csib"), @@ -4824,6 +4885,7 @@ static const struct of_device_id tegra_pmc_match[] = { { .compatible = "nvidia,tegra194-pmc", .data = &tegra194_pmc_soc }, { .compatible = "nvidia,tegra186-pmc", .data = &tegra186_pmc_soc }, { .compatible = "nvidia,tegra210-pmc", .data = &tegra210_pmc_soc }, + { .compatible = "nvidia,tegra210b01-pmc", .data = &tegra210b01_pmc_soc }, { .compatible = "nvidia,tegra132-pmc", .data = &tegra124_pmc_soc }, { .compatible = "nvidia,tegra124-pmc", .data = &tegra124_pmc_soc }, { .compatible = "nvidia,tegra114-pmc", .data = &tegra114_pmc_soc }, -- 2.54.0 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support 2026-07-20 6:31 ` [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support Aaron Kling via B4 Relay @ 2026-07-20 6:45 ` sashiko-bot 2026-07-21 7:22 ` Mikko Perttunen 1 sibling, 0 replies; 7+ messages in thread From: sashiko-bot @ 2026-07-20 6:45 UTC (permalink / raw) To: Aaron Kling; +Cc: conor+dt, robh, devicetree Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider: - [High] The PMC driver will fail to probe on Tegra210B01 if the device tree contains legacy or unsupported powergate nodes (such as 'venc' or 've2'). - [Medium] Undocumented behavioral change silently disabling MBIST workarounds and I/O pad write-enables on Tegra210B01. -- --- Patch [2]: [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support --- Note: The format of this review has been altered to provide a free-form summary of the findings without quoting the original patch code due to recitation restrictions. commit c36910d71ccf4e86f0df7aa19d1325b68ba7e824 Author: Azkali Manad <a.ffcc7@gmail.com> soc/tegra: pmc: Add Tegra210B01 support The PMC in Tegra210B01 is very similar to the one in the original Tegra210, but has a few powergate differences. Add support for this soc. [Severity: High] Will the PMC driver fail to probe on Tegra210B01 devices that reuse the standard tegra210.dtsi? The standard device tree contains venc and ve2 powergate nodes. Since these are omitted from the new tegra210b01_powergates array, tegra_powergate_lookup() will return -ENODEV for them. During initialization, tegra_powergate_init() iterates over all child nodes using for_each_child_of_node_scoped(). If tegra_powergate_add() returns an error for any node, the loop breaks and propagates the error, aborting the entire PMC probe. Could the loop be updated to safely skip unsupported powergate nodes instead of failing? [Severity: Medium] Is it intentional that the mbist workaround and I/O pad write-enables are disabled for this SoC? The new tegra210b01_pmc_soc definition sets needs_mbist_war and has_io_pad_wren to false, which diverges from the base tegra210_pmc_soc where they are set to true. The commit message mentions powergate differences, but doesn't mention disabling these hardware flags. If the B01 hardware stepping resolved these errata physically, could this be documented in the commit message? Otherwise, will omitting these flags cause hardware initialization issues? -- Sashiko AI review · https://sashiko.dev/#/patchset/20260720-t210b01-pmc-v2-0-ca5317f8507b@gmail.com?part=2 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support 2026-07-20 6:31 ` [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support Aaron Kling via B4 Relay 2026-07-20 6:45 ` sashiko-bot @ 2026-07-21 7:22 ` Mikko Perttunen 2026-07-21 17:42 ` Aaron Kling 1 sibling, 1 reply; 7+ messages in thread From: Mikko Perttunen @ 2026-07-21 7:22 UTC (permalink / raw) To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding, Jonathan Hunter, webgeek1234 Cc: Thierry Reding, devicetree, linux-tegra, linux-kernel, Aaron Kling, Azkali Manad, Thomas Makin On Monday, July 20, 2026 3:31 PM Aaron Kling via B4 Relay wrote: > From: Azkali Manad <a.ffcc7@gmail.com> > > The PMC in Tegra210B01 is very similar to the one in the original > Tegra210, but has a few powergate differences. Add support for this soc. The tables are a bit difficult to compare directly, so maybe list the differences between 210 and 210B01 in the commit message. > > Signed-off-by: Azkali Manad <a.ffcc7@gmail.com> > Co-developed-by: Thomas Makin <halorocker89@gmail.com> > Signed-off-by: Thomas Makin <halorocker89@gmail.com> > Co-developed-by: Aaron Kling <webgeek1234@gmail.com> > Signed-off-by: Aaron Kling <webgeek1234@gmail.com> > --- > drivers/soc/tegra/pmc.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 62 insertions(+) > > diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c > index f419a5395545f..48ae4ff3f00db 100644 > --- a/drivers/soc/tegra/pmc.c > +++ b/drivers/soc/tegra/pmc.c > @@ -3897,6 +3897,67 @@ static const struct tegra_pmc_soc tegra210_pmc_soc = { > .has_single_mmio_aperture = true, > }; > > +static const char * const tegra210b01_powergates[] = { > + [TEGRA_POWERGATE_CPU] = "crail", > + [TEGRA_POWERGATE_3D] = "3d", > + [TEGRA_POWERGATE_PCIE] = "pcie", > + [TEGRA_POWERGATE_MPE] = "mpe", > + [TEGRA_POWERGATE_SATA] = "sata", T210B01 doesn't have SATA, so this can be removed. > + [TEGRA_POWERGATE_CPU1] = "cpu1", > + [TEGRA_POWERGATE_CPU2] = "cpu2", > + [TEGRA_POWERGATE_CPU3] = "cpu3", > + [TEGRA_POWERGATE_CPU0] = "cpu0", > + [TEGRA_POWERGATE_C0NC] = "c0nc", > + [TEGRA_POWERGATE_SOR] = "sor", > + [TEGRA_POWERGATE_DIS] = "dis", > + [TEGRA_POWERGATE_DISB] = "disb", > + [TEGRA_POWERGATE_XUSBA] = "xusba", > + [TEGRA_POWERGATE_XUSBB] = "xusbb", > + [TEGRA_POWERGATE_XUSBC] = "xusbc", > + [TEGRA_POWERGATE_VIC] = "vic", > + [TEGRA_POWERGATE_IRAM] = "iram", > + [TEGRA_POWERGATE_NVDEC] = "nvdec", > + [TEGRA_POWERGATE_NVJPG] = "nvjpg", > + [TEGRA_POWERGATE_AUD] = "aud", > + [TEGRA_POWERGATE_DFD] = "dfd", > +}; > + > +static const struct tegra_pmc_soc tegra210b01_pmc_soc = { > + .supports_core_domain = false, > + .num_powergates = ARRAY_SIZE(tegra210b01_powergates), > + .powergates = tegra210b01_powergates, > + .num_cpu_powergates = ARRAY_SIZE(tegra210_cpu_powergates), > + .cpu_powergates = tegra210_cpu_powergates, > + .has_tsense_reset = true, > + .has_gpu_clamps = true, > + .needs_mbist_war = false, > + .has_io_pad_wren = false, Any particular reason to flip this to false? AFAICT it is still needed to make PWR_DET_VAL writable as on T210. (The reset value is already (mostly) fine but seems prudent to write it anyway) Thank you! Mikko > + .maybe_tz_only = true, > + .num_io_pads = ARRAY_SIZE(tegra210_io_pads), > + .io_pads = tegra210_io_pads, > + .num_io_pad_vctrls = ARRAY_SIZE(tegra210_io_pad_vctrls), > + .io_pad_vctrls = tegra210_io_pad_vctrls, > + .num_pin_descs = ARRAY_SIZE(tegra210_pin_descs), > + .pin_descs = tegra210_pin_descs, > + .regs = &tegra20_pmc_regs, > + .init = tegra20_pmc_init, > + .setup_irq_polarity = tegra20_pmc_setup_irq_polarity, > + .powergate_set = tegra114_powergate_set, > + .irq_set_wake = tegra210_pmc_irq_set_wake, > + .irq_set_type = tegra210_pmc_irq_set_type, > + .reset_sources = tegra210_reset_sources, > + .num_reset_sources = ARRAY_SIZE(tegra210_reset_sources), > + .reset_levels = NULL, > + .num_reset_levels = 0, > + .num_wake_events = ARRAY_SIZE(tegra210_wake_events), > + .wake_events = tegra210_wake_events, > + .pmc_clks_data = tegra_pmc_clks_data, > + .num_pmc_clks = ARRAY_SIZE(tegra_pmc_clks_data), > + .has_blink_output = true, > + .has_usb_sleepwalk = true, > + .has_single_mmio_aperture = true, > +}; > + > static const struct tegra_io_pad_soc tegra186_io_pads[] = { > TEGRA_IO_PAD(TEGRA_IO_PAD_CSIA, 0, 0x74, 0x78, "csia"), > TEGRA_IO_PAD(TEGRA_IO_PAD_CSIB, 1, 0x74, 0x78, "csib"), > @@ -4824,6 +4885,7 @@ static const struct of_device_id tegra_pmc_match[] = { > { .compatible = "nvidia,tegra194-pmc", .data = &tegra194_pmc_soc }, > { .compatible = "nvidia,tegra186-pmc", .data = &tegra186_pmc_soc }, > { .compatible = "nvidia,tegra210-pmc", .data = &tegra210_pmc_soc }, > + { .compatible = "nvidia,tegra210b01-pmc", .data = &tegra210b01_pmc_soc }, > { .compatible = "nvidia,tegra132-pmc", .data = &tegra124_pmc_soc }, > { .compatible = "nvidia,tegra124-pmc", .data = &tegra124_pmc_soc }, > { .compatible = "nvidia,tegra114-pmc", .data = &tegra114_pmc_soc }, > > -- > 2.54.0 > > > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support 2026-07-21 7:22 ` Mikko Perttunen @ 2026-07-21 17:42 ` Aaron Kling 0 siblings, 0 replies; 7+ messages in thread From: Aaron Kling @ 2026-07-21 17:42 UTC (permalink / raw) To: Mikko Perttunen Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding, Jonathan Hunter, Thierry Reding, devicetree, linux-tegra, linux-kernel, Azkali Manad, Thomas Makin On Tue, Jul 21, 2026 at 2:22 AM Mikko Perttunen <mperttunen@nvidia.com> wrote: > > On Monday, July 20, 2026 3:31 PM Aaron Kling via B4 Relay wrote: > > From: Azkali Manad <a.ffcc7@gmail.com> > > > > The PMC in Tegra210B01 is very similar to the one in the original > > Tegra210, but has a few powergate differences. Add support for this soc. > > The tables are a bit difficult to compare directly, so maybe list the > differences between 210 and 210B01 in the commit message. > > > > > Signed-off-by: Azkali Manad <a.ffcc7@gmail.com> > > Co-developed-by: Thomas Makin <halorocker89@gmail.com> > > Signed-off-by: Thomas Makin <halorocker89@gmail.com> > > Co-developed-by: Aaron Kling <webgeek1234@gmail.com> > > Signed-off-by: Aaron Kling <webgeek1234@gmail.com> > > --- > > drivers/soc/tegra/pmc.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 62 insertions(+) > > > > diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c > > index f419a5395545f..48ae4ff3f00db 100644 > > --- a/drivers/soc/tegra/pmc.c > > +++ b/drivers/soc/tegra/pmc.c > > @@ -3897,6 +3897,67 @@ static const struct tegra_pmc_soc tegra210_pmc_soc = { > > .has_single_mmio_aperture = true, > > }; > > > > +static const char * const tegra210b01_powergates[] = { > > + [TEGRA_POWERGATE_CPU] = "crail", > > + [TEGRA_POWERGATE_3D] = "3d", > > + [TEGRA_POWERGATE_PCIE] = "pcie", > > + [TEGRA_POWERGATE_MPE] = "mpe", > > + [TEGRA_POWERGATE_SATA] = "sata", > > T210B01 doesn't have SATA, so this can be removed. Ack > > + [TEGRA_POWERGATE_CPU1] = "cpu1", > > + [TEGRA_POWERGATE_CPU2] = "cpu2", > > + [TEGRA_POWERGATE_CPU3] = "cpu3", > > + [TEGRA_POWERGATE_CPU0] = "cpu0", > > + [TEGRA_POWERGATE_C0NC] = "c0nc", > > + [TEGRA_POWERGATE_SOR] = "sor", > > + [TEGRA_POWERGATE_DIS] = "dis", > > + [TEGRA_POWERGATE_DISB] = "disb", > > + [TEGRA_POWERGATE_XUSBA] = "xusba", > > + [TEGRA_POWERGATE_XUSBB] = "xusbb", > > + [TEGRA_POWERGATE_XUSBC] = "xusbc", > > + [TEGRA_POWERGATE_VIC] = "vic", > > + [TEGRA_POWERGATE_IRAM] = "iram", > > + [TEGRA_POWERGATE_NVDEC] = "nvdec", > > + [TEGRA_POWERGATE_NVJPG] = "nvjpg", > > + [TEGRA_POWERGATE_AUD] = "aud", > > + [TEGRA_POWERGATE_DFD] = "dfd", > > +}; > > + > > +static const struct tegra_pmc_soc tegra210b01_pmc_soc = { > > + .supports_core_domain = false, > > + .num_powergates = ARRAY_SIZE(tegra210b01_powergates), > > + .powergates = tegra210b01_powergates, > > + .num_cpu_powergates = ARRAY_SIZE(tegra210_cpu_powergates), > > + .cpu_powergates = tegra210_cpu_powergates, > > + .has_tsense_reset = true, > > + .has_gpu_clamps = true, > > + .needs_mbist_war = false, > > + .has_io_pad_wren = false, > > Any particular reason to flip this to false? AFAICT it is still needed > to make PWR_DET_VAL writable as on T210. > > (The reset value is already (mostly) fine but seems prudent to write it > anyway) Ah, it looks like I missed that d4f0c189945c74 inverted the value along with the rename. Will fix. > Thank you! > Mikko > > > + .maybe_tz_only = true, > > + .num_io_pads = ARRAY_SIZE(tegra210_io_pads), > > + .io_pads = tegra210_io_pads, > > + .num_io_pad_vctrls = ARRAY_SIZE(tegra210_io_pad_vctrls), > > + .io_pad_vctrls = tegra210_io_pad_vctrls, > > + .num_pin_descs = ARRAY_SIZE(tegra210_pin_descs), > > + .pin_descs = tegra210_pin_descs, > > + .regs = &tegra20_pmc_regs, > > + .init = tegra20_pmc_init, > > + .setup_irq_polarity = tegra20_pmc_setup_irq_polarity, > > + .powergate_set = tegra114_powergate_set, > > + .irq_set_wake = tegra210_pmc_irq_set_wake, > > + .irq_set_type = tegra210_pmc_irq_set_type, > > + .reset_sources = tegra210_reset_sources, > > + .num_reset_sources = ARRAY_SIZE(tegra210_reset_sources), > > + .reset_levels = NULL, > > + .num_reset_levels = 0, > > + .num_wake_events = ARRAY_SIZE(tegra210_wake_events), > > + .wake_events = tegra210_wake_events, > > + .pmc_clks_data = tegra_pmc_clks_data, > > + .num_pmc_clks = ARRAY_SIZE(tegra_pmc_clks_data), > > + .has_blink_output = true, > > + .has_usb_sleepwalk = true, > > + .has_single_mmio_aperture = true, > > +}; > > + > > static const struct tegra_io_pad_soc tegra186_io_pads[] = { > > TEGRA_IO_PAD(TEGRA_IO_PAD_CSIA, 0, 0x74, 0x78, "csia"), > > TEGRA_IO_PAD(TEGRA_IO_PAD_CSIB, 1, 0x74, 0x78, "csib"), > > @@ -4824,6 +4885,7 @@ static const struct of_device_id tegra_pmc_match[] = { > > { .compatible = "nvidia,tegra194-pmc", .data = &tegra194_pmc_soc }, > > { .compatible = "nvidia,tegra186-pmc", .data = &tegra186_pmc_soc }, > > { .compatible = "nvidia,tegra210-pmc", .data = &tegra210_pmc_soc }, > > + { .compatible = "nvidia,tegra210b01-pmc", .data = &tegra210b01_pmc_soc }, > > { .compatible = "nvidia,tegra132-pmc", .data = &tegra124_pmc_soc }, > > { .compatible = "nvidia,tegra124-pmc", .data = &tegra124_pmc_soc }, > > { .compatible = "nvidia,tegra114-pmc", .data = &tegra114_pmc_soc }, > > > > -- > > 2.54.0 > > > > > > Aaron ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-07-21 17:42 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-07-20 6:31 [PATCH v2 0/2] soc/tegra: pmc: Add Tegra210B01 support Aaron Kling via B4 Relay 2026-07-20 6:31 ` [PATCH v2 1/2] dt-bindings: soc: tegra: pmc: Document Tegra210B01 Aaron Kling via B4 Relay 2026-07-20 13:44 ` Rob Herring (Arm) 2026-07-20 6:31 ` [PATCH v2 2/2] soc/tegra: pmc: Add Tegra210B01 support Aaron Kling via B4 Relay 2026-07-20 6:45 ` sashiko-bot 2026-07-21 7:22 ` Mikko Perttunen 2026-07-21 17:42 ` Aaron Kling
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox