Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1316148 > unrolled thread
| Started by | Krzysztof Kozlowski <k.kozlowski@samsung.com> |
|---|---|
| First post | 2016-01-25 02:00 +0100 |
| Last post | 2016-01-25 10:20 +0100 |
| Articles | 5 — 2 participants |
Back to article view | Back to linux.kernel
[RESEND v2 0/2] arm64: EXYNOS: Consolidate Exynos7 symbol Krzysztof Kozlowski <k.kozlowski@samsung.com> - 2016-01-25 02:00 +0100
[RESEND v2 2/2] arm64: EXYNOS: Consolidate ARCH_EXYNOS7 symbol into ARCH_EXYNOS Krzysztof Kozlowski <k.kozlowski@samsung.com> - 2016-01-25 02:00 +0100
[RESEND v2 1/2] clk: samsung: Don't build ARMv8 clock drivers on ARMv7 Krzysztof Kozlowski <k.kozlowski@samsung.com> - 2016-01-25 02:00 +0100
Re: [RESEND v2 1/2] clk: samsung: Don't build ARMv8 clock drivers on ARMv7 Arnd Bergmann <arnd@arndb.de> - 2016-01-25 10:10 +0100
Re: [RESEND v2 1/2] clk: samsung: Don't build ARMv8 clock drivers on ARMv7 Krzysztof Kozlowski <k.kozlowski@samsung.com> - 2016-01-25 10:20 +0100
| From | Krzysztof Kozlowski <k.kozlowski@samsung.com> |
|---|---|
| Date | 2016-01-25 02:00 +0100 |
| Subject | [RESEND v2 0/2] arm64: EXYNOS: Consolidate Exynos7 symbol |
| Message-ID | <qUDFF-4pc-5@gated-at.bofh.it> |
Dear Michael and Stephen, Patch 2 *depends* on patch 1. I was thinking about merging this through arm-soc tree after getting your acks. Can you look at patch 1 here and share your comments? Short introduction ================== We don't need ARCH_EXYNOS7 symbol because all ARMv8 platforms should fall under generic ARCH_EXYNOS. In the same time there is no sense in building clocks for these ARMv8 SoCs on ARMv7 builds. In future this will also influence PMU [1] driver. Best regards, Krzysztof [1] https://www.mail-archive.com/linux-samsung-soc@vger.kernel.org/msg48090.html Krzysztof Kozlowski (2): clk: samsung: Don't build ARMv8 clock drivers on ARMv7 arm64: EXYNOS: Consolidate ARCH_EXYNOS7 symbol into ARCH_EXYNOS arch/arm64/Kconfig.platforms | 11 ++--------- arch/arm64/boot/dts/exynos/Makefile | 2 +- arch/arm64/configs/defconfig | 2 +- drivers/clk/samsung/Kconfig | 6 ++++++ drivers/clk/samsung/Makefile | 4 ++-- 5 files changed, 12 insertions(+), 13 deletions(-) -- 1.9.1
[toc] | [next] | [standalone]
| From | Krzysztof Kozlowski <k.kozlowski@samsung.com> |
|---|---|
| Date | 2016-01-25 02:00 +0100 |
| Subject | [RESEND v2 2/2] arm64: EXYNOS: Consolidate ARCH_EXYNOS7 symbol into ARCH_EXYNOS |
| Message-ID | <qUDFF-4pc-7@gated-at.bofh.it> |
| In reply to | #1316148 |
The ARMv8 Exynos family SoCs in Linux kernel are currently: - Exynos5433 (controlled by ARCH_EXYNOS), - Exynos7 (controlled by ARCH_EXYNOS7). It duplicates Kconfig symbols unnecessarily, so consolidate them into one ARCH_EXYNOS. Future SoCs could fall also under the ARCH_EXYNOS symbol. The commit should not bring any visible functional change. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com> Reviewed-by: Pankaj Dubey <pankaj.dubey@samsung.com> Tested-by: Alim Akhtar <alim.akhtar@samsung.com> Reviewed-by: Tomasz Figa <tomasz.figa@gmail.com> --- Changes since v1: 1. Minor cleanups after Tomasz's comments. 2. Added tags: Chanwoo's, Pankaj's, Alim's and Tomasz's. --- arch/arm64/Kconfig.platforms | 11 ++--------- arch/arm64/boot/dts/exynos/Makefile | 2 +- arch/arm64/configs/defconfig | 2 +- 3 files changed, 4 insertions(+), 11 deletions(-) diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms index 4043c35962cc..64f1116640bc 100644 --- a/arch/arm64/Kconfig.platforms +++ b/arch/arm64/Kconfig.platforms @@ -13,21 +13,14 @@ config ARCH_BERLIN This enables support for Marvell Berlin SoC Family config ARCH_EXYNOS - bool - help - This enables support for Samsung Exynos SoC family - -config ARCH_EXYNOS7 - bool "ARMv8 based Samsung Exynos7" - select ARCH_EXYNOS + bool "ARMv8 based Samsung Exynos SoC family" select COMMON_CLK_SAMSUNG select HAVE_S3C2410_WATCHDOG if WATCHDOG select HAVE_S3C_RTC if RTC_CLASS select PINCTRL select PINCTRL_EXYNOS - help - This enables support for Samsung Exynos7 SoC family + This enables support for ARMv8 based Samsung Exynos SoC family. config ARCH_LAYERSCAPE bool "ARMv8 based Freescale Layerscape SoC family" diff --git a/arch/arm64/boot/dts/exynos/Makefile b/arch/arm64/boot/dts/exynos/Makefile index 20310e5b6d6f..50c9b9383cfa 100644 --- a/arch/arm64/boot/dts/exynos/Makefile +++ b/arch/arm64/boot/dts/exynos/Makefile @@ -1,4 +1,4 @@ -dtb-$(CONFIG_ARCH_EXYNOS7) += exynos7-espresso.dtb +dtb-$(CONFIG_ARCH_EXYNOS) += exynos7-espresso.dtb always := $(dtb-y) subdir-y := $(dts-dirs) diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index bdd7aa358d2a..a396fa7c69a5 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig @@ -33,7 +33,7 @@ CONFIG_MODULE_UNLOAD=y # CONFIG_IOSCHED_DEADLINE is not set CONFIG_ARCH_BCM_IPROC=y CONFIG_ARCH_BERLIN=y -CONFIG_ARCH_EXYNOS7=y +CONFIG_ARCH_EXYNOS=y CONFIG_ARCH_LAYERSCAPE=y CONFIG_ARCH_HISI=y CONFIG_ARCH_MEDIATEK=y -- 1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Krzysztof Kozlowski <k.kozlowski@samsung.com> |
|---|---|
| Date | 2016-01-25 02:00 +0100 |
| Subject | [RESEND v2 1/2] clk: samsung: Don't build ARMv8 clock drivers on ARMv7 |
| Message-ID | <qUDFF-4pc-9@gated-at.bofh.it> |
| In reply to | #1316148 |
Currently the Exynos5433 (ARMv8 SoC) clock driver depends on ARCH_EXYNOS so it is built also on ARMv7. This does not bring any kind of benefit. There won't be a single kernel image for ARMv7 and ARMv8 SoCs (like multi_v7 for ARMv7). Instead build clock drivers only for respective SoC's architecture. Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com> Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com> Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Tested-by: Alim Akhtar <alim.akhtar@samsung.com> Acked-by: Tomasz Figa <tomasz.figa@gmail.com> --- Changes since v1: 1. Use one Kconfig symbol for clocks of all ARM64 SoCs (after discussion): EXYNOS_ARM64_COMMON_CLK. 2. Minor cleanups after Tomasz's comments. 3. Added tags: Chanwoo's, Sylwester's, Alim's and Tomasz's (the tags were given for v1 but assuming that change from 1. is not major enough to require re-tagging). --- drivers/clk/samsung/Kconfig | 6 ++++++ drivers/clk/samsung/Makefile | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/clk/samsung/Kconfig b/drivers/clk/samsung/Kconfig index 84196ecdaa12..3a2c032965e6 100644 --- a/drivers/clk/samsung/Kconfig +++ b/drivers/clk/samsung/Kconfig @@ -2,6 +2,7 @@ config COMMON_CLK_SAMSUNG bool select COMMON_CLK +# ARM SoCs: config S3C2410_COMMON_CLK bool select COMMON_CLK_SAMSUNG @@ -24,3 +25,8 @@ config S3C2443_COMMON_CLK bool select COMMON_CLK_SAMSUNG +# ARM64 SoCs (e.g. Exynos5433, Exynos7): +config EXYNOS_ARM64_COMMON_CLK + def_bool ARCH_EXYNOS + depends on ARM64 || COMPILE_TEST + select COMMON_CLK_SAMSUNG diff --git a/drivers/clk/samsung/Makefile b/drivers/clk/samsung/Makefile index 5f6833ea355d..fc367d4b2902 100644 --- a/drivers/clk/samsung/Makefile +++ b/drivers/clk/samsung/Makefile @@ -10,11 +10,11 @@ obj-$(CONFIG_SOC_EXYNOS5250) += clk-exynos5250.o obj-$(CONFIG_SOC_EXYNOS5260) += clk-exynos5260.o obj-$(CONFIG_SOC_EXYNOS5410) += clk-exynos5410.o obj-$(CONFIG_SOC_EXYNOS5420) += clk-exynos5420.o -obj-$(CONFIG_ARCH_EXYNOS) += clk-exynos5433.o +obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos5433.o obj-$(CONFIG_SOC_EXYNOS5440) += clk-exynos5440.o obj-$(CONFIG_ARCH_EXYNOS) += clk-exynos-audss.o obj-$(CONFIG_ARCH_EXYNOS) += clk-exynos-clkout.o -obj-$(CONFIG_ARCH_EXYNOS7) += clk-exynos7.o +obj-$(CONFIG_EXYNOS_ARM64_COMMON_CLK) += clk-exynos7.o obj-$(CONFIG_S3C2410_COMMON_CLK)+= clk-s3c2410.o obj-$(CONFIG_S3C2410_COMMON_DCLK)+= clk-s3c2410-dclk.o obj-$(CONFIG_S3C2412_COMMON_CLK)+= clk-s3c2412.o -- 1.9.1
[toc] | [prev] | [next] | [standalone]
| From | Arnd Bergmann <arnd@arndb.de> |
|---|---|
| Date | 2016-01-25 10:10 +0100 |
| Subject | Re: [RESEND v2 1/2] clk: samsung: Don't build ARMv8 clock drivers on ARMv7 |
| Message-ID | <qULjQ-1FX-23@gated-at.bofh.it> |
| In reply to | #1316150 |
On Monday 25 January 2016 09:50:20 Krzysztof Kozlowski wrote: > > +# ARM64 SoCs (e.g. Exynos5433, Exynos7): > +config EXYNOS_ARM64_COMMON_CLK > + def_bool ARCH_EXYNOS > + depends on ARM64 || COMPILE_TEST > + select COMMON_CLK_SAMSUNG > So you always enable it on ARM64 when ARCH_EXYNOS is enabled, but enable it silently on ARM32 when COMPILE_TEST is set? That sounds wrong. How about config EXYNOS_ARM64_COMMON_CLK bool "EXYNOS 64-bit clock support" if COMPILE_TEST default ARM64 && ARCH_EXYNOS depends on (ARM64 && ARCH_EXYNOS) || COMPILE_TEST select COMMON_CLK_SAMSUNG Arnd
[toc] | [prev] | [next] | [standalone]
| From | Krzysztof Kozlowski <k.kozlowski@samsung.com> |
|---|---|
| Date | 2016-01-25 10:20 +0100 |
| Subject | Re: [RESEND v2 1/2] clk: samsung: Don't build ARMv8 clock drivers on ARMv7 |
| Message-ID | <qULtx-1Kq-11@gated-at.bofh.it> |
| In reply to | #1316305 |
On 25.01.2016 17:59, Arnd Bergmann wrote: > On Monday 25 January 2016 09:50:20 Krzysztof Kozlowski wrote: >> >> +# ARM64 SoCs (e.g. Exynos5433, Exynos7): >> +config EXYNOS_ARM64_COMMON_CLK >> + def_bool ARCH_EXYNOS >> + depends on ARM64 || COMPILE_TEST >> + select COMMON_CLK_SAMSUNG >> > > So you always enable it on ARM64 when ARCH_EXYNOS is enabled, but > enable it silently on ARM32 when COMPILE_TEST is set? Hmm... indeed it would better to make it toggle-able when COMPILE_TEST. > That sounds wrong. How about > > config EXYNOS_ARM64_COMMON_CLK > bool "EXYNOS 64-bit clock support" if COMPILE_TEST > default ARM64 && ARCH_EXYNOS > depends on (ARM64 && ARCH_EXYNOS) || COMPILE_TEST > select COMMON_CLK_SAMSUNG Although this looks more complicated but it does the trick. Thanks for the hint. Only one (not related directly to this change) issue - with COMPILE_TEST the "EXYNOS 64-bit clock support" option goes above the common clock framework (up to drivers section) because it is not part of the Clocks menu. I'll fix it in v3. Best regards, Krzysztof
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web