All of lore.kernel.org
 help / color / mirror / Atom feed
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Greg KH <gregkh@linuxfoundation.org>,
	William McVicker <willmcvicker@google.com>
Cc: Peter Griffin <peter.griffin@linaro.org>,
	robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org,
	mturquette@baylibre.com, conor+dt@kernel.org, sboyd@kernel.org,
	tomasz.figa@gmail.com, s.nawrocki@samsung.com,
	linus.walleij@linaro.org, wim@linux-watchdog.org,
	linux@roeck-us.net, catalin.marinas@arm.com, will@kernel.org,
	arnd@arndb.de, olof@lixom.net, cw00.choi@samsung.com,
	tudor.ambarus@linaro.org, andre.draszik@linaro.org,
	semen.protsenko@linaro.org, soc@kernel.org,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-samsung-soc@vger.kernel.org, linux-clk@vger.kernel.org,
	linux-gpio@vger.kernel.org, linux-watchdog@vger.kernel.org,
	kernel-team@google.com
Subject: Re: [PATCH 18/21] arm64: dts: google: Add initial Google gs101 SoC support
Date: Thu, 5 Oct 2023 21:18:48 +0200	[thread overview]
Message-ID: <99419159-cab0-4c79-a4a0-12229bfad3c0@linaro.org> (raw)
In-Reply-To: <2023100520-cleaver-sinless-fbae@gregkh>

On 05/10/2023 20:05, Greg KH wrote:
> On Thu, Oct 05, 2023 at 10:59:12AM -0700, William McVicker wrote:
>> On 10/05/2023, Peter Griffin wrote:
>>> Google gs101 SoC is ARMv8 mobile SoC found in the Pixel 6,
>>> (oriole) Pixel 6a (bluejay) and Pixel 6 pro (raven) mobile
>>> phones. It features:
>>> * 4xA55 little cluster
>>> * 2xA76 Mid cluster
>>> * 2xX1 Big cluster
>>>
>>> This commit adds the basic device tree for gs101 (SoC) and oriole
>>> (pixel 6). Further platform support will be added over time.
>>>
>>> It has been tested with a minimal busybox initramfs and boots to
>>> a shell.
>>>
>>> Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
>>> ---
>>>  arch/arm64/Kconfig.platforms                  |    6 +
>>>  arch/arm64/boot/dts/Makefile                  |    1 +
>>>  arch/arm64/boot/dts/google/Makefile           |    6 +
>>>  arch/arm64/boot/dts/google/gs101-oriole.dts   |   68 +
>>>  arch/arm64/boot/dts/google/gs101-pinctrl.dtsi | 1134 +++++++++++++++++
>>>  arch/arm64/boot/dts/google/gs101-pinctrl.h    |   17 +
>>>  arch/arm64/boot/dts/google/gs101.dtsi         |  501 ++++++++
>>>  7 files changed, 1733 insertions(+)
>>>  create mode 100644 arch/arm64/boot/dts/google/Makefile
>>>  create mode 100644 arch/arm64/boot/dts/google/gs101-oriole.dts
>>>  create mode 100644 arch/arm64/boot/dts/google/gs101-pinctrl.dtsi
>>>  create mode 100644 arch/arm64/boot/dts/google/gs101-pinctrl.h
>>>  create mode 100644 arch/arm64/boot/dts/google/gs101.dtsi
>>>
>>> diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms
>>> index 6069120199bb..a5ed1b719488 100644
>>> --- a/arch/arm64/Kconfig.platforms
>>> +++ b/arch/arm64/Kconfig.platforms
>>> @@ -107,6 +107,12 @@ config ARCH_EXYNOS
>>>  	help
>>>  	  This enables support for ARMv8 based Samsung Exynos SoC family.
>>>  
>>> +config ARCH_GOOGLE_TENSOR
>>> +	bool "Google Tensor SoC fmaily"
>>> +	depends on ARCH_EXYNOS
>>> +	help
>>> +	  Support for ARMv8 based Google Tensor platforms.
>>
>> I'd like to bring up this thread and discuss the option of not introducing
>> another ARCH_* config:
>>
>>   https://lore.kernel.org/all/20200306103652.GA3634389@kroah.com/
> 
> I agree, PLEASE don't add platform config options as that makes it
> impossible to make a unified kernel image that works for more than one
> platform at the same time.

There is no single problem in making unified image as we were doing
since beginning of ARM64. The ARCH_* is not a obstacle for this.

> 
>> I especially don't like the "depends on ARCH_EXYNOS" because that forces one to
>> include all the other Exynos drivers that ARCH_EXYNOS selects that Google
>> Tensor SoCs don't need. Can we consider using SOC_GOOGLE instead and for all
>> drivers that actually depend on the SoC hardware, we can just add "depends on
>> SOC_GOOGLE"?
> 
> Why do any of this at all?  It should not be needed.
> 
>> The idea is that drivers should be tied to hardware -- not a specific vendor.
> 
> And drivers should be auto-loaded.
> 
> All of these drivers are not vendor-specific at all, they are based on
> the same IP blocks as others, so that is how they should be unified.

They are vendor specific. All of them are specifically for Exynos
hardwre, because this is Exynos. We call it Google GS/Tensor SoC just
for fancy convenience, but this just Exynos.

> 
>> By making drivers depend on ARCH_*, you are introducing an arbitrary vendor
>> dependency and not a hardware dependency.
> 
> Totally agree, thanks for bringing this up.
> 
Best regards,
Krzysztof


WARNING: multiple messages have this Message-ID (diff)
From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Greg KH <gregkh@linuxfoundation.org>,
	William McVicker <willmcvicker@google.com>
Cc: Peter Griffin <peter.griffin@linaro.org>,
	robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org,
	mturquette@baylibre.com, conor+dt@kernel.org, sboyd@kernel.org,
	tomasz.figa@gmail.com, s.nawrocki@samsung.com,
	linus.walleij@linaro.org, wim@linux-watchdog.org,
	linux@roeck-us.net, catalin.marinas@arm.com, will@kernel.org,
	arnd@arndb.de, olof@lixom.net, cw00.choi@samsung.com,
	tudor.ambarus@linaro.org, andre.draszik@linaro.org,
	semen.protsenko@linaro.org, soc@kernel.org,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux-samsung-soc@vger.kernel.org, linux-clk@vger.kernel.org,
	linux-gpio@vger.kernel.org, linux-watchdog@vger.kernel.org,
	kernel-team@google.com
Subject: Re: [PATCH 18/21] arm64: dts: google: Add initial Google gs101 SoC support
Date: Thu, 5 Oct 2023 21:18:48 +0200	[thread overview]
Message-ID: <99419159-cab0-4c79-a4a0-12229bfad3c0@linaro.org> (raw)
In-Reply-To: <2023100520-cleaver-sinless-fbae@gregkh>

On 05/10/2023 20:05, Greg KH wrote:
> On Thu, Oct 05, 2023 at 10:59:12AM -0700, William McVicker wrote:
>> On 10/05/2023, Peter Griffin wrote:
>>> Google gs101 SoC is ARMv8 mobile SoC found in the Pixel 6,
>>> (oriole) Pixel 6a (bluejay) and Pixel 6 pro (raven) mobile
>>> phones. It features:
>>> * 4xA55 little cluster
>>> * 2xA76 Mid cluster
>>> * 2xX1 Big cluster
>>>
>>> This commit adds the basic device tree for gs101 (SoC) and oriole
>>> (pixel 6). Further platform support will be added over time.
>>>
>>> It has been tested with a minimal busybox initramfs and boots to
>>> a shell.
>>>
>>> Signed-off-by: Peter Griffin <peter.griffin@linaro.org>
>>> ---
>>>  arch/arm64/Kconfig.platforms                  |    6 +
>>>  arch/arm64/boot/dts/Makefile                  |    1 +
>>>  arch/arm64/boot/dts/google/Makefile           |    6 +
>>>  arch/arm64/boot/dts/google/gs101-oriole.dts   |   68 +
>>>  arch/arm64/boot/dts/google/gs101-pinctrl.dtsi | 1134 +++++++++++++++++
>>>  arch/arm64/boot/dts/google/gs101-pinctrl.h    |   17 +
>>>  arch/arm64/boot/dts/google/gs101.dtsi         |  501 ++++++++
>>>  7 files changed, 1733 insertions(+)
>>>  create mode 100644 arch/arm64/boot/dts/google/Makefile
>>>  create mode 100644 arch/arm64/boot/dts/google/gs101-oriole.dts
>>>  create mode 100644 arch/arm64/boot/dts/google/gs101-pinctrl.dtsi
>>>  create mode 100644 arch/arm64/boot/dts/google/gs101-pinctrl.h
>>>  create mode 100644 arch/arm64/boot/dts/google/gs101.dtsi
>>>
>>> diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms
>>> index 6069120199bb..a5ed1b719488 100644
>>> --- a/arch/arm64/Kconfig.platforms
>>> +++ b/arch/arm64/Kconfig.platforms
>>> @@ -107,6 +107,12 @@ config ARCH_EXYNOS
>>>  	help
>>>  	  This enables support for ARMv8 based Samsung Exynos SoC family.
>>>  
>>> +config ARCH_GOOGLE_TENSOR
>>> +	bool "Google Tensor SoC fmaily"
>>> +	depends on ARCH_EXYNOS
>>> +	help
>>> +	  Support for ARMv8 based Google Tensor platforms.
>>
>> I'd like to bring up this thread and discuss the option of not introducing
>> another ARCH_* config:
>>
>>   https://lore.kernel.org/all/20200306103652.GA3634389@kroah.com/
> 
> I agree, PLEASE don't add platform config options as that makes it
> impossible to make a unified kernel image that works for more than one
> platform at the same time.

There is no single problem in making unified image as we were doing
since beginning of ARM64. The ARCH_* is not a obstacle for this.

> 
>> I especially don't like the "depends on ARCH_EXYNOS" because that forces one to
>> include all the other Exynos drivers that ARCH_EXYNOS selects that Google
>> Tensor SoCs don't need. Can we consider using SOC_GOOGLE instead and for all
>> drivers that actually depend on the SoC hardware, we can just add "depends on
>> SOC_GOOGLE"?
> 
> Why do any of this at all?  It should not be needed.
> 
>> The idea is that drivers should be tied to hardware -- not a specific vendor.
> 
> And drivers should be auto-loaded.
> 
> All of these drivers are not vendor-specific at all, they are based on
> the same IP blocks as others, so that is how they should be unified.

They are vendor specific. All of them are specifically for Exynos
hardwre, because this is Exynos. We call it Google GS/Tensor SoC just
for fancy convenience, but this just Exynos.

> 
>> By making drivers depend on ARCH_*, you are introducing an arbitrary vendor
>> dependency and not a hardware dependency.
> 
> Totally agree, thanks for bringing this up.
> 
Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2023-10-05 19:18 UTC|newest]

Thread overview: 150+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-05 15:55 [PATCH 00/21] Add minimal Tensor/GS101 SoC support and Oriole/Pixel6 board Peter Griffin
2023-10-05 15:55 ` Peter Griffin
2023-10-05 15:55 ` [PATCH 01/21] dt-bindings: interrupt-controller: Add gs101 interrupt controller Peter Griffin
2023-10-05 15:55   ` Peter Griffin
2023-10-05 16:04   ` Krzysztof Kozlowski
2023-10-05 16:04     ` Krzysztof Kozlowski
2023-10-06 21:52     ` Linus Walleij
2023-10-06 21:52       ` Linus Walleij
2023-10-05 15:55 ` [PATCH 02/21] dt-bindings: soc: samsung: exynos-pmu: Add gs101 compatible Peter Griffin
2023-10-05 15:55   ` Peter Griffin
2023-10-05 16:05   ` Krzysztof Kozlowski
2023-10-05 16:05     ` Krzysztof Kozlowski
2023-10-05 15:56 ` [PATCH 03/21] dt-bindings: clock: Add Google gs101 clock management unit bindings Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:06   ` Krzysztof Kozlowski
2023-10-05 16:06     ` Krzysztof Kozlowski
2023-10-05 15:56 ` [PATCH 04/21] dt-bindings: soc: google: exynos-sysreg: add dedicated SYSREG compatibles to GS101 Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:07   ` Krzysztof Kozlowski
2023-10-05 16:07     ` Krzysztof Kozlowski
2023-10-06 12:41     ` Peter Griffin
2023-10-06 12:41       ` Peter Griffin
2023-10-06 12:43       ` Krzysztof Kozlowski
2023-10-06 12:43         ` Krzysztof Kozlowski
2023-10-05 15:56 ` [PATCH 05/21] dt-bindings: watchdog: Document Google gs101 & gs201 watchdog bindings Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:08   ` Krzysztof Kozlowski
2023-10-05 16:08     ` Krzysztof Kozlowski
2023-10-05 17:37   ` William McVicker
2023-10-05 17:37     ` William McVicker
2023-10-05 15:56 ` [PATCH 06/21] dt-bindings: arm: google: Add bindings for Google ARM platforms Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-06 20:44   ` Rob Herring
2023-10-06 20:44     ` Rob Herring
2023-10-05 15:56 ` [PATCH 07/21] dt-bindings: pinctrl: samsung: add google,gs101-pinctrl compatible Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:10   ` Krzysztof Kozlowski
2023-10-05 16:10     ` Krzysztof Kozlowski
2023-10-05 15:56 ` [PATCH 08/21] dt-bindings: pinctrl: samsung: add gs101-wakeup-eint compatible Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:10   ` Krzysztof Kozlowski
2023-10-05 16:10     ` Krzysztof Kozlowski
2023-10-05 15:56 ` [PATCH 09/21] dt-bindings: clock: gs101: Add cmu_top clock indices Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:11   ` Krzysztof Kozlowski
2023-10-05 16:11     ` Krzysztof Kozlowski
2023-10-08 22:48   ` Chanwoo Choi
2023-10-08 22:48     ` Chanwoo Choi
2023-10-05 15:56 ` [PATCH 10/21] dt-bindings: clock: gs101: Add cmu_apm " Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:11   ` Krzysztof Kozlowski
2023-10-05 16:11     ` Krzysztof Kozlowski
2023-10-05 15:56 ` [PATCH 11/21] dt-bindings: clock: gs101: Add cmu_misc " Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 15:56 ` [PATCH 12/21] clk: samsung: clk-pll: Add support for pll_{0516,0517,518} Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 17:39   ` William McVicker
2023-10-05 17:39     ` William McVicker
2023-10-08 22:51   ` Chanwoo Choi
2023-10-08 22:51     ` Chanwoo Choi
2023-10-05 15:56 ` [PATCH 13/21] clk: samsung: clk-gs101: Add cmu_top registers, plls, mux and gates Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 17:42   ` William McVicker
2023-10-05 17:42     ` William McVicker
2023-10-05 17:45   ` Krzysztof Kozlowski
2023-10-05 17:45     ` Krzysztof Kozlowski
2023-10-06  4:16   ` kernel test robot
2023-10-06  4:16     ` kernel test robot
2023-10-14  6:37   ` kernel test robot
2023-10-14  6:37     ` kernel test robot
2023-10-05 15:56 ` [PATCH 14/21] clk: samsung: clk-gs101: add CMU_APM support Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 17:43   ` William McVicker
2023-10-05 17:43     ` William McVicker
2023-10-05 17:45   ` William McVicker
2023-10-05 17:45     ` William McVicker
2023-10-05 15:56 ` [PATCH 15/21] clk: google: gs101: Add support for CMU_MISC clock unit Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-06  5:20   ` kernel test robot
2023-10-06  5:20     ` kernel test robot
2023-10-05 15:56 ` [PATCH 16/21] pinctrl: samsung: Add gs101 SoC pinctrl configuration Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-06  6:33   ` Krzysztof Kozlowski
2023-10-06  6:33     ` Krzysztof Kozlowski
2023-10-09  7:49     ` Peter Griffin
2023-10-09  7:49       ` Peter Griffin
2023-10-05 15:56 ` [PATCH 17/21] watchdog: s3c2410_wdt: Add support for Google tensor SoCs Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 18:58   ` Guenter Roeck
2023-10-05 18:58     ` Guenter Roeck
2023-10-09 11:56     ` Peter Griffin
2023-10-09 11:56       ` Peter Griffin
2023-10-05 15:56 ` [PATCH 18/21] arm64: dts: google: Add initial Google gs101 SoC support Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:21   ` Krzysztof Kozlowski
2023-10-05 16:21     ` Krzysztof Kozlowski
2023-10-05 17:59   ` William McVicker
2023-10-05 17:59     ` William McVicker
2023-10-05 18:05     ` Greg KH
2023-10-05 18:05       ` Greg KH
2023-10-05 19:18       ` Krzysztof Kozlowski [this message]
2023-10-05 19:18         ` Krzysztof Kozlowski
2023-10-05 19:23         ` Greg KH
2023-10-05 19:23           ` Greg KH
2023-10-05 19:29           ` Krzysztof Kozlowski
2023-10-05 19:29             ` Krzysztof Kozlowski
2023-10-05 23:19             ` William McVicker
2023-10-05 23:19               ` William McVicker
2023-10-06  6:06               ` Krzysztof Kozlowski
2023-10-06  6:06                 ` Krzysztof Kozlowski
2023-10-06  8:48                 ` Arnd Bergmann
2023-10-06  8:48                   ` Arnd Bergmann
2023-10-06 16:33                   ` William McVicker
2023-10-06 16:33                     ` William McVicker
2023-10-07 14:34                     ` Krzysztof Kozlowski
2023-10-07 14:34                       ` Krzysztof Kozlowski
2023-10-09 16:10                       ` William McVicker
2023-10-09 16:10                         ` William McVicker
2023-10-05 19:21     ` Krzysztof Kozlowski
2023-10-05 19:21       ` Krzysztof Kozlowski
2023-10-05 19:22     ` Krzysztof Kozlowski
2023-10-05 19:22       ` Krzysztof Kozlowski
2023-10-05 19:26       ` William McVicker
2023-10-05 19:26         ` William McVicker
2023-10-09 12:01   ` Tudor Ambarus
2023-10-09 12:01     ` Tudor Ambarus
2023-10-05 15:56 ` [PATCH 19/21] google/gs101: Add dt overlay for oriole board Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:33   ` Krzysztof Kozlowski
2023-10-05 16:33     ` Krzysztof Kozlowski
2023-10-09 20:03     ` William McVicker
2023-10-09 20:03       ` William McVicker
2023-10-06  7:08   ` Geert Uytterhoeven
2023-10-06  7:08     ` Geert Uytterhoeven
2023-10-06 20:52   ` Rob Herring
2023-10-06 20:52     ` Rob Herring
2023-10-10 12:09     ` Peter Griffin
2023-10-10 12:09       ` Peter Griffin
2023-10-05 15:56 ` [PATCH 20/21] arm64: defconfig: Enable Google Tensor SoC Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 15:56 ` [PATCH 21/21] MAINTAINERS: add entry for " Peter Griffin
2023-10-05 15:56   ` Peter Griffin
2023-10-05 16:32 ` [PATCH 00/21] Add minimal Tensor/GS101 SoC support and Oriole/Pixel6 board Krzysztof Kozlowski
2023-10-05 16:32   ` Krzysztof Kozlowski
2023-10-09 11:39   ` Peter Griffin
2023-10-09 11:39     ` Peter Griffin
2023-10-09 11:10 ` Krzysztof Kozlowski
2023-10-09 11:10   ` Krzysztof Kozlowski
2023-10-09 11:40   ` Peter Griffin
2023-10-09 11:40     ` Peter Griffin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=99419159-cab0-4c79-a4a0-12229bfad3c0@linaro.org \
    --to=krzysztof.kozlowski@linaro.org \
    --cc=andre.draszik@linaro.org \
    --cc=arnd@arndb.de \
    --cc=catalin.marinas@arm.com \
    --cc=conor+dt@kernel.org \
    --cc=cw00.choi@samsung.com \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=kernel-team@google.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=linux-watchdog@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=mturquette@baylibre.com \
    --cc=olof@lixom.net \
    --cc=peter.griffin@linaro.org \
    --cc=robh+dt@kernel.org \
    --cc=s.nawrocki@samsung.com \
    --cc=sboyd@kernel.org \
    --cc=semen.protsenko@linaro.org \
    --cc=soc@kernel.org \
    --cc=tomasz.figa@gmail.com \
    --cc=tudor.ambarus@linaro.org \
    --cc=will@kernel.org \
    --cc=willmcvicker@google.com \
    --cc=wim@linux-watchdog.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.