On 05/10/2023 19:59, 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@xxxxxxxxxx> >> --- >> 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@xxxxxxxxx/ > > 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 Since we are creating unified kernel images, having other drivers is not a problem. > Tensor SoCs don't need. Can we consider using SOC_GOOGLE instead and for all SOC_GOOGLE will work exactly the same and depend on ARCH_EXYNOS or appear everywhere as ARCH_EXYNOS. We already had this talk with Tesla. > drivers that actually depend on the SoC hardware, we can just add "depends on > SOC_GOOGLE"? > > The idea is that drivers should be tied to hardware -- not a specific vendor. And hardware is Exynos. Tesla FSD and Google Tensor is Exynos, even if you do no like calling it. > By making drivers depend on ARCH_*, you are introducing an arbitrary vendor > dependency and not a hardware dependency. There is no arbitrary dependency. We call it all Exynos hardware, because this is Exynos. I remember what you were pushing for removal of ARCH_EXYNOS and there waas clear feedback, not only from me: this is against communities goals. > > Thanks, > Will Please trim the replies from unrelated context. Best regards, Krzysztof