diff mbox

[1/2] arm64: Kconfig: add basic support for the Tegra SoC family and the Tegra132 SoC

Message ID 20150107081729.14381.47835.stgit@dusk.lan (mailing list archive)
State New, archived
Headers show

Commit Message

Paul Walmsley Jan. 7, 2015, 8:17 a.m. UTC
Add basic Kbuild support for the Tegra SoC family, and specifically,
the Tegra132 SoC.  Tegra132 pairs the NVIDIA Denver CPU complex with
the SoC integration of Tegra124 - hence the use of ARCH_TEGRA and the
Tegra124 pinctrl option.

For the time being, Tegra ARM64 support is added with a dependency on
CONFIG_BROKEN.  This is temporary and can be removed when the
following two patches for compilation failures have been merged:

"soc: tegra: pmc: restrict compilation of suspend-related support to ARM"
https://git.kernel.org/cgit/linux/kernel/git/pjw/tegra-dev.git/commit/?id=053decbf3900d4e8fee799f9a29cf8d905b2fcb1

"clocksource: tegra: wrap arch/arm-specific sections in CONFIG_ARM"
https://git.kernel.org/cgit/linux/kernel/git/pjw/tegra-dev.git/commit/?id=220aa7fcc74a1a089916be6cb34b0e326f31841f

This patch was based on a patch originally written by Allen Martin
<amartin@nvidia.com>.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Paul Walmsley <pwalmsley@nvidia.com>
Cc: Allen Martin <amartin@nvidia.com>
Cc: Thierry Reding <treding@nvidia.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
---
 arch/arm64/Kconfig |   29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

Comments

Thierry Reding Jan. 7, 2015, 2:20 p.m. UTC | #1
On Wed, Jan 07, 2015 at 01:17:33AM -0700, Paul Walmsley wrote:
> Add basic Kbuild support for the Tegra SoC family, and specifically,
> the Tegra132 SoC.  Tegra132 pairs the NVIDIA Denver CPU complex with
> the SoC integration of Tegra124 - hence the use of ARCH_TEGRA and the
> Tegra124 pinctrl option.
> 
> For the time being, Tegra ARM64 support is added with a dependency on
> CONFIG_BROKEN.  This is temporary and can be removed when the
> following two patches for compilation failures have been merged:
> 
> "soc: tegra: pmc: restrict compilation of suspend-related support to ARM"
> https://git.kernel.org/cgit/linux/kernel/git/pjw/tegra-dev.git/commit/?id=053decbf3900d4e8fee799f9a29cf8d905b2fcb1

I think you said you were going to respin this on top of v3.19-rc1, but
the above doesn't seem to be rebased yet. Given that the only comments
were bikeshed from my part, do you have any objections to me taking the
patch and apply the bikeshed myself?

> "clocksource: tegra: wrap arch/arm-specific sections in CONFIG_ARM"
> https://git.kernel.org/cgit/linux/kernel/git/pjw/tegra-dev.git/commit/?id=220aa7fcc74a1a089916be6cb34b0e326f31841f

I don't think I've seen any comments other than mine on this patch.
Given that this patch depends on the above to get rid of the BROKEN
dependency, it might still be preferable to take both via the Tegra
tree. Otherwise we probably have to wait until v3.21 before we can
apply this.

Thierry
Paul Walmsley Jan. 8, 2015, 10:37 a.m. UTC | #2
Hi Thierry,

On 01/07/2015 07:20 AM, Thierry Reding wrote:
> * PGP Signed by an unknown key
>
> On Wed, Jan 07, 2015 at 01:17:33AM -0700, Paul Walmsley wrote:
>> Add basic Kbuild support for the Tegra SoC family, and specifically,
>> the Tegra132 SoC.  Tegra132 pairs the NVIDIA Denver CPU complex with
>> the SoC integration of Tegra124 - hence the use of ARCH_TEGRA and the
>> Tegra124 pinctrl option.
>>
>> For the time being, Tegra ARM64 support is added with a dependency on
>> CONFIG_BROKEN.  This is temporary and can be removed when the
>> following two patches for compilation failures have been merged:
>>
>> "soc: tegra: pmc: restrict compilation of suspend-related support to ARM"
>> https://git.kernel.org/cgit/linux/kernel/git/pjw/tegra-dev.git/commit/?id=053decbf3900d4e8fee799f9a29cf8d905b2fcb1
> I think you said you were going to respin this on top of v3.19-rc1, but
> the above doesn't seem to be rebased yet. Given that the only comments
> were bikeshed from my part, do you have any objections to me taking the
> patch and apply the bikeshed myself?

Sorry about that.  I am indeed on the hook for that.   I got distracted 
with some other patches and haven't yet reposted that one :-(
I will do that later today.  If you would prefer to do it yourself, 
that's fine too.

>> "clocksource: tegra: wrap arch/arm-specific sections in CONFIG_ARM"
>> https://git.kernel.org/cgit/linux/kernel/git/pjw/tegra-dev.git/commit/?id=220aa7fcc74a1a089916be6cb34b0e326f31841f
> I don't think I've seen any comments other than mine on this patch.
> Given that this patch depends on the above to get rid of the BROKEN
> dependency, it might still be preferable to take both via the Tegra
> tree. Otherwise we probably have to wait until v3.21 before we can
> apply this.

I'm fine with them going in through you if you have a strong preference 
for that approach.   Generally my preference is for patches to go in 
through the direct maintainer's tree to minimize the risk and hassle of 
merge conflicts.  But if you'll take care of that side of it, it doesn't 
matter too much to me :-)   We just need to pick up acks from the direct 
maintainers, I guess?


- Paul
Thierry Reding Jan. 8, 2015, 10:55 a.m. UTC | #3
On Thu, Jan 08, 2015 at 03:37:04AM -0700, Paul Walmsley wrote:
> Hi Thierry,
> 
> On 01/07/2015 07:20 AM, Thierry Reding wrote:
> >* PGP Signed by an unknown key
> >
> >On Wed, Jan 07, 2015 at 01:17:33AM -0700, Paul Walmsley wrote:
> >>Add basic Kbuild support for the Tegra SoC family, and specifically,
> >>the Tegra132 SoC.  Tegra132 pairs the NVIDIA Denver CPU complex with
> >>the SoC integration of Tegra124 - hence the use of ARCH_TEGRA and the
> >>Tegra124 pinctrl option.
> >>
> >>For the time being, Tegra ARM64 support is added with a dependency on
> >>CONFIG_BROKEN.  This is temporary and can be removed when the
> >>following two patches for compilation failures have been merged:
> >>
> >>"soc: tegra: pmc: restrict compilation of suspend-related support to ARM"
> >>https://git.kernel.org/cgit/linux/kernel/git/pjw/tegra-dev.git/commit/?id=053decbf3900d4e8fee799f9a29cf8d905b2fcb1
> >I think you said you were going to respin this on top of v3.19-rc1, but
> >the above doesn't seem to be rebased yet. Given that the only comments
> >were bikeshed from my part, do you have any objections to me taking the
> >patch and apply the bikeshed myself?
> 
> Sorry about that.  I am indeed on the hook for that.   I got distracted with
> some other patches and haven't yet reposted that one :-(
> I will do that later today.  If you would prefer to do it yourself, that's
> fine too.

I ended up applying your patch as is. Retrospectively my comments had
been a little too much on the pedantic side.

> >>"clocksource: tegra: wrap arch/arm-specific sections in CONFIG_ARM"
> >>https://git.kernel.org/cgit/linux/kernel/git/pjw/tegra-dev.git/commit/?id=220aa7fcc74a1a089916be6cb34b0e326f31841f
> >I don't think I've seen any comments other than mine on this patch.
> >Given that this patch depends on the above to get rid of the BROKEN
> >dependency, it might still be preferable to take both via the Tegra
> >tree. Otherwise we probably have to wait until v3.21 before we can
> >apply this.
> 
> I'm fine with them going in through you if you have a strong preference for
> that approach.   Generally my preference is for patches to go in through the
> direct maintainer's tree to minimize the risk and hassle of merge conflicts.
> But if you'll take care of that side of it, it doesn't matter too much to me
> :-)   We just need to pick up acks from the direct maintainers, I guess?

Yes, we really just need an ack from either Daniel or Thomas on the
clocksource patch. I don't think that driver has a lot of potential for
merge conflicts.

Thierry
diff mbox

Patch

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index b1f9a20a3677..f2f8ade6f3e9 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -153,6 +153,35 @@  config ARCH_SEATTLE
 	help
 	  This enables support for AMD Seattle SOC Family
 
+config ARCH_TEGRA
+	bool
+	depends on BROKEN
+	select ARCH_HAS_RESET_CONTROLLER
+	select ARCH_REQUIRE_GPIOLIB
+	select CLKDEV_LOOKUP
+	select CLKSRC_MMIO
+	select CLKSRC_OF
+	select GENERIC_CLOCKEVENTS
+	select HAVE_CLK
+	select HAVE_SMP
+	select PINCTRL
+	help
+	  This enables support for the NVIDIA Tegra SoC family
+
+config ARCH_TEGRA_132_SOC
+	bool "NVIDIA Tegra132 SoC"
+	depends on BROKEN
+	select ARCH_TEGRA
+	select PINCTRL_TEGRA124
+	select USB_ARCH_HAS_EHCI if USB_SUPPORT
+	select USB_ULPI if USB_PHY
+	select USB_ULPI_VIEWPORT if USB_PHY
+	help
+	  Enable support for NVIDIA Tegra132 SoC, based on the Denver
+	  ARMv8 CPU.  The Tegra132 SoC is similar to the Tegra124 SoC,
+	  but contains an NVIDIA Denver CPU complex in place of
+	  Tegra124's "4+1" Cortex-A15 CPU complex.
+
 config ARCH_THUNDER
 	bool "Cavium Inc. Thunder SoC Family"
 	help