linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/4] xtensa: remove unneeded exports
@ 2021-08-11 16:37 Masahiro Yamada
  2021-08-11 16:37 ` [PATCH 2/4] xtensa: do not build variants directory Masahiro Yamada
                   ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Masahiro Yamada @ 2021-08-11 16:37 UTC (permalink / raw)
  To: Chris Zankel, Max Filippov, linux-xtensa; +Cc: Masahiro Yamada, linux-kernel

These are not used in any of subdirectories.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

 arch/xtensa/Makefile | 2 --
 1 file changed, 2 deletions(-)

diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
index e9c8f064c44d..6fab7fc87579 100644
--- a/arch/xtensa/Makefile
+++ b/arch/xtensa/Makefile
@@ -17,7 +17,6 @@
 variant-y := $(patsubst "%",%,$(CONFIG_XTENSA_VARIANT_NAME))
 
 VARIANT = $(variant-y)
-export VARIANT
 
 ifneq ($(VARIANT),)
   ifdef cross_compiling
@@ -34,7 +33,6 @@ platform-$(CONFIG_XTENSA_PLATFORM_ISS)		:= iss
 platform-$(CONFIG_XTENSA_PLATFORM_XTFPGA)	:= xtfpga
 
 PLATFORM = $(platform-y)
-export PLATFORM
 
 # temporarily until string.h is fixed
 KBUILD_CFLAGS += -ffreestanding -D__linux__
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/4] xtensa: do not build variants directory
  2021-08-11 16:37 [PATCH 1/4] xtensa: remove unneeded exports Masahiro Yamada
@ 2021-08-11 16:37 ` Masahiro Yamada
  2021-08-13  5:36   ` Max Filippov
  2021-08-11 16:37 ` [PATCH 3/4] xtensa: build platform directories unconditionally Masahiro Yamada
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 10+ messages in thread
From: Masahiro Yamada @ 2021-08-11 16:37 UTC (permalink / raw)
  To: Chris Zankel, Max Filippov, linux-xtensa; +Cc: Masahiro Yamada, linux-kernel

None of arch/xtensa/variants/*/ has Makefile, so 'buildvar' is always
empty.

Perhaps, downstream variant code might be dropped in, but given the
fact that none of upstream variants builds anything in their variant
directory, I doubt this is needed.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

 arch/xtensa/Makefile | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
index 6fab7fc87579..3c0573fe6761 100644
--- a/arch/xtensa/Makefile
+++ b/arch/xtensa/Makefile
@@ -55,9 +55,7 @@ KBUILD_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(vardirs) $(plfdirs))
 
 KBUILD_DEFCONFIG := iss_defconfig
 
-# Only build variant and/or platform if it includes a Makefile
-
-buildvar := $(shell test -e $(srctree)/arch/xtensa/variants/$(VARIANT)/Makefile && echo arch/xtensa/variants/$(VARIANT)/)
+# Only build platform if it includes a Makefile
 buildplf := $(shell test -e $(srctree)/arch/xtensa/platforms/$(PLATFORM)/Makefile && echo arch/xtensa/platforms/$(PLATFORM)/)
 
 # Find libgcc.a
@@ -66,7 +64,7 @@ LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
 
 head-y		:= arch/xtensa/kernel/head.o
 core-y		+= arch/xtensa/kernel/ arch/xtensa/mm/
-core-y		+= $(buildvar) $(buildplf)
+core-y		+= $(buildplf)
 core-y 		+= arch/xtensa/boot/dts/
 
 libs-y		+= arch/xtensa/lib/ $(LIBGCC)
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 3/4] xtensa: build platform directories unconditionally
  2021-08-11 16:37 [PATCH 1/4] xtensa: remove unneeded exports Masahiro Yamada
  2021-08-11 16:37 ` [PATCH 2/4] xtensa: do not build variants directory Masahiro Yamada
@ 2021-08-11 16:37 ` Masahiro Yamada
  2021-08-13  5:37   ` Max Filippov
  2021-08-11 16:37 ` [PATCH 4/4] xtensa: move core-y in arch/xtensa/Makefile to arch/xtensa/Kbuild Masahiro Yamada
  2021-08-13  5:35 ` [PATCH 1/4] xtensa: remove unneeded exports Max Filippov
  3 siblings, 1 reply; 10+ messages in thread
From: Masahiro Yamada @ 2021-08-11 16:37 UTC (permalink / raw)
  To: Chris Zankel, Max Filippov, linux-xtensa; +Cc: Masahiro Yamada, linux-kernel

All of arch/xtensa/platforms/*/ have Makefile. You do not need to
check the presence of Makefile.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

 arch/xtensa/Makefile | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
index 3c0573fe6761..093e87b889be 100644
--- a/arch/xtensa/Makefile
+++ b/arch/xtensa/Makefile
@@ -32,8 +32,6 @@ platform-$(CONFIG_XTENSA_PLATFORM_XT2000)	:= xt2000
 platform-$(CONFIG_XTENSA_PLATFORM_ISS)		:= iss
 platform-$(CONFIG_XTENSA_PLATFORM_XTFPGA)	:= xtfpga
 
-PLATFORM = $(platform-y)
-
 # temporarily until string.h is fixed
 KBUILD_CFLAGS += -ffreestanding -D__linux__
 KBUILD_CFLAGS += -pipe -mlongcalls -mtext-section-literals
@@ -55,16 +53,13 @@ KBUILD_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(vardirs) $(plfdirs))
 
 KBUILD_DEFCONFIG := iss_defconfig
 
-# Only build platform if it includes a Makefile
-buildplf := $(shell test -e $(srctree)/arch/xtensa/platforms/$(PLATFORM)/Makefile && echo arch/xtensa/platforms/$(PLATFORM)/)
-
 # Find libgcc.a
 
 LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
 
 head-y		:= arch/xtensa/kernel/head.o
 core-y		+= arch/xtensa/kernel/ arch/xtensa/mm/
-core-y		+= $(buildplf)
+core-y		+= arch/xtensa/platforms/$(platform-y)/
 core-y 		+= arch/xtensa/boot/dts/
 
 libs-y		+= arch/xtensa/lib/ $(LIBGCC)
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 4/4] xtensa: move core-y in arch/xtensa/Makefile to arch/xtensa/Kbuild
  2021-08-11 16:37 [PATCH 1/4] xtensa: remove unneeded exports Masahiro Yamada
  2021-08-11 16:37 ` [PATCH 2/4] xtensa: do not build variants directory Masahiro Yamada
  2021-08-11 16:37 ` [PATCH 3/4] xtensa: build platform directories unconditionally Masahiro Yamada
@ 2021-08-11 16:37 ` Masahiro Yamada
  2021-08-13  5:32   ` Max Filippov
  2021-08-13  5:35 ` [PATCH 1/4] xtensa: remove unneeded exports Max Filippov
  3 siblings, 1 reply; 10+ messages in thread
From: Masahiro Yamada @ 2021-08-11 16:37 UTC (permalink / raw)
  To: Chris Zankel, Max Filippov, linux-xtensa; +Cc: Masahiro Yamada, linux-kernel

Use obj-y to clean up Makefile.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

 arch/xtensa/Kbuild             | 1 +
 arch/xtensa/Makefile           | 3 ---
 arch/xtensa/platforms/Makefile | 4 ++++
 3 files changed, 5 insertions(+), 3 deletions(-)
 create mode 100644 arch/xtensa/platforms/Makefile

diff --git a/arch/xtensa/Kbuild b/arch/xtensa/Kbuild
index a4e40e534e6a..fd12f61745ba 100644
--- a/arch/xtensa/Kbuild
+++ b/arch/xtensa/Kbuild
@@ -1 +1,2 @@
 # SPDX-License-Identifier: GPL-2.0-only
+obj-y += kernel/ mm/ platforms/ boot/dts/
diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
index 093e87b889be..96714ef7c89e 100644
--- a/arch/xtensa/Makefile
+++ b/arch/xtensa/Makefile
@@ -58,9 +58,6 @@ KBUILD_DEFCONFIG := iss_defconfig
 LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
 
 head-y		:= arch/xtensa/kernel/head.o
-core-y		+= arch/xtensa/kernel/ arch/xtensa/mm/
-core-y		+= arch/xtensa/platforms/$(platform-y)/
-core-y 		+= arch/xtensa/boot/dts/
 
 libs-y		+= arch/xtensa/lib/ $(LIBGCC)
 
diff --git a/arch/xtensa/platforms/Makefile b/arch/xtensa/platforms/Makefile
new file mode 100644
index 000000000000..e2e7e0726979
--- /dev/null
+++ b/arch/xtensa/platforms/Makefile
@@ -0,0 +1,4 @@
+# SPDX-License-Identifier: GPL-2.0-only
+obj-$(CONFIG_XTENSA_PLATFORM_XT2000)	+= xt2000/
+obj-$(CONFIG_XTENSA_PLATFORM_ISS)	+= iss/
+obj-$(CONFIG_XTENSA_PLATFORM_XTFPGA)	+= xtfpga/
-- 
2.30.2


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 4/4] xtensa: move core-y in arch/xtensa/Makefile to arch/xtensa/Kbuild
  2021-08-11 16:37 ` [PATCH 4/4] xtensa: move core-y in arch/xtensa/Makefile to arch/xtensa/Kbuild Masahiro Yamada
@ 2021-08-13  5:32   ` Max Filippov
  2021-08-13  7:09     ` Masahiro Yamada
  0 siblings, 1 reply; 10+ messages in thread
From: Max Filippov @ 2021-08-13  5:32 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Chris Zankel, open list:TENSILICA XTENSA PORT (xtensa), LKML

On Wed, Aug 11, 2021 at 9:38 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> Use obj-y to clean up Makefile.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
>  arch/xtensa/Kbuild             | 1 +
>  arch/xtensa/Makefile           | 3 ---
>  arch/xtensa/platforms/Makefile | 4 ++++
>  3 files changed, 5 insertions(+), 3 deletions(-)
>  create mode 100644 arch/xtensa/platforms/Makefile
>
> diff --git a/arch/xtensa/Kbuild b/arch/xtensa/Kbuild
> index a4e40e534e6a..fd12f61745ba 100644
> --- a/arch/xtensa/Kbuild
> +++ b/arch/xtensa/Kbuild
> @@ -1 +1,2 @@
>  # SPDX-License-Identifier: GPL-2.0-only
> +obj-y += kernel/ mm/ platforms/ boot/dts/
> diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
> index 093e87b889be..96714ef7c89e 100644
> --- a/arch/xtensa/Makefile
> +++ b/arch/xtensa/Makefile
> @@ -58,9 +58,6 @@ KBUILD_DEFCONFIG := iss_defconfig
>  LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
>
>  head-y         := arch/xtensa/kernel/head.o
> -core-y         += arch/xtensa/kernel/ arch/xtensa/mm/
> -core-y         += arch/xtensa/platforms/$(platform-y)/
> -core-y                 += arch/xtensa/boot/dts/
>
>  libs-y         += arch/xtensa/lib/ $(LIBGCC)
>
> diff --git a/arch/xtensa/platforms/Makefile b/arch/xtensa/platforms/Makefile
> new file mode 100644
> index 000000000000..e2e7e0726979
> --- /dev/null
> +++ b/arch/xtensa/platforms/Makefile
> @@ -0,0 +1,4 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +obj-$(CONFIG_XTENSA_PLATFORM_XT2000)   += xt2000/
> +obj-$(CONFIG_XTENSA_PLATFORM_ISS)      += iss/
> +obj-$(CONFIG_XTENSA_PLATFORM_XTFPGA)   += xtfpga/

With this change platform directory names are duplicated in two
makefiles. Can we move them to Kconfig with something like the
following (on top of this change)?

---8<---
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig
index b843902ad9fd..fe5ae5ec71c9 100644
--- a/arch/xtensa/Kconfig
+++ b/arch/xtensa/Kconfig
@@ -314,6 +314,12 @@ config PLATFORM_HAVE_XIP

menu "Platform options"

+config XTENSA_PLATFORM
+       string
+       default iss if XTENSA_PLATFORM_ISS
+       default xt2000 if XTENSA_PLATFORM_XT2000
+       default xtfpga if XTENSA_PLATFORM_XTFPGA
+
choice
       prompt "Xtensa System Type"
       default XTENSA_PLATFORM_ISS
diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
index 96714ef7c89e..6b104ecdd19e 100644
--- a/arch/xtensa/Makefile
+++ b/arch/xtensa/Makefile
@@ -26,12 +26,6 @@ ifneq ($(VARIANT),)
  endif
endif

-# Platform configuration
-
-platform-$(CONFIG_XTENSA_PLATFORM_XT2000)      := xt2000
-platform-$(CONFIG_XTENSA_PLATFORM_ISS)         := iss
-platform-$(CONFIG_XTENSA_PLATFORM_XTFPGA)      := xtfpga
-
# temporarily until string.h is fixed
KBUILD_CFLAGS += -ffreestanding -D__linux__
KBUILD_CFLAGS += -pipe -mlongcalls -mtext-section-literals
@@ -47,7 +41,7 @@ endif
CHECKFLAGS += -D$(if $(CONFIG_CPU_BIG_ENDIAN),__XTENSA_EB__,__XTENSA_EL__)

vardirs := $(patsubst %,arch/xtensa/variants/%/,$(variant-y))
-plfdirs := $(patsubst %,arch/xtensa/platforms/%/,$(platform-y))
+plfdirs := $(patsubst %,arch/xtensa/platforms/%/,$(CONFIG_XTENSA_PLATFORM))

KBUILD_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(vardirs) $(plfdirs))

diff --git a/arch/xtensa/platforms/Makefile b/arch/xtensa/platforms/Makefile
index e2e7e0726979..08d0e9053db6 100644
--- a/arch/xtensa/platforms/Makefile
+++ b/arch/xtensa/platforms/Makefile
@@ -1,4 +1,2 @@
# SPDX-License-Identifier: GPL-2.0-only
-obj-$(CONFIG_XTENSA_PLATFORM_XT2000)   += xt2000/
-obj-$(CONFIG_XTENSA_PLATFORM_ISS)      += iss/
-obj-$(CONFIG_XTENSA_PLATFORM_XTFPGA)   += xtfpga/
+obj-y += $(CONFIG_XTENSA_PLATFORM)/

---8<---

-- 
Thanks.
-- Max

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 1/4] xtensa: remove unneeded exports
  2021-08-11 16:37 [PATCH 1/4] xtensa: remove unneeded exports Masahiro Yamada
                   ` (2 preceding siblings ...)
  2021-08-11 16:37 ` [PATCH 4/4] xtensa: move core-y in arch/xtensa/Makefile to arch/xtensa/Kbuild Masahiro Yamada
@ 2021-08-13  5:35 ` Max Filippov
  3 siblings, 0 replies; 10+ messages in thread
From: Max Filippov @ 2021-08-13  5:35 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Chris Zankel, open list:TENSILICA XTENSA PORT (xtensa), LKML

On Wed, Aug 11, 2021 at 9:38 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> These are not used in any of subdirectories.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
>  arch/xtensa/Makefile | 2 --
>  1 file changed, 2 deletions(-)

Thanks, applied to my xtensa tree.

-- 
Thanks.
-- Max

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 2/4] xtensa: do not build variants directory
  2021-08-11 16:37 ` [PATCH 2/4] xtensa: do not build variants directory Masahiro Yamada
@ 2021-08-13  5:36   ` Max Filippov
  0 siblings, 0 replies; 10+ messages in thread
From: Max Filippov @ 2021-08-13  5:36 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Chris Zankel, open list:TENSILICA XTENSA PORT (xtensa), LKML

On Wed, Aug 11, 2021 at 9:38 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> None of arch/xtensa/variants/*/ has Makefile, so 'buildvar' is always
> empty.
>
> Perhaps, downstream variant code might be dropped in, but given the
> fact that none of upstream variants builds anything in their variant
> directory, I doubt this is needed.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
>  arch/xtensa/Makefile | 6 ++----
>  1 file changed, 2 insertions(+), 4 deletions(-)

Thanks, applied to my xtensa tree.

-- 
Thanks.
-- Max

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 3/4] xtensa: build platform directories unconditionally
  2021-08-11 16:37 ` [PATCH 3/4] xtensa: build platform directories unconditionally Masahiro Yamada
@ 2021-08-13  5:37   ` Max Filippov
  0 siblings, 0 replies; 10+ messages in thread
From: Max Filippov @ 2021-08-13  5:37 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Chris Zankel, open list:TENSILICA XTENSA PORT (xtensa), LKML

On Wed, Aug 11, 2021 at 9:38 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> All of arch/xtensa/platforms/*/ have Makefile. You do not need to
> check the presence of Makefile.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
>  arch/xtensa/Makefile | 7 +------
>  1 file changed, 1 insertion(+), 6 deletions(-)

Thanks, applied to my xtensa tree.

-- 
Thanks.
-- Max

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 4/4] xtensa: move core-y in arch/xtensa/Makefile to arch/xtensa/Kbuild
  2021-08-13  5:32   ` Max Filippov
@ 2021-08-13  7:09     ` Masahiro Yamada
  2021-08-13  7:51       ` Max Filippov
  0 siblings, 1 reply; 10+ messages in thread
From: Masahiro Yamada @ 2021-08-13  7:09 UTC (permalink / raw)
  To: Max Filippov; +Cc: Chris Zankel, open list:TENSILICA XTENSA PORT (xtensa), LKML

On Fri, Aug 13, 2021 at 2:32 PM Max Filippov <jcmvbkbc@gmail.com> wrote:
>
> On Wed, Aug 11, 2021 at 9:38 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
> >
> > Use obj-y to clean up Makefile.
> >
> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > ---
> >
> >  arch/xtensa/Kbuild             | 1 +
> >  arch/xtensa/Makefile           | 3 ---
> >  arch/xtensa/platforms/Makefile | 4 ++++
> >  3 files changed, 5 insertions(+), 3 deletions(-)
> >  create mode 100644 arch/xtensa/platforms/Makefile
> >
> > diff --git a/arch/xtensa/Kbuild b/arch/xtensa/Kbuild
> > index a4e40e534e6a..fd12f61745ba 100644
> > --- a/arch/xtensa/Kbuild
> > +++ b/arch/xtensa/Kbuild
> > @@ -1 +1,2 @@
> >  # SPDX-License-Identifier: GPL-2.0-only
> > +obj-y += kernel/ mm/ platforms/ boot/dts/
> > diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
> > index 093e87b889be..96714ef7c89e 100644
> > --- a/arch/xtensa/Makefile
> > +++ b/arch/xtensa/Makefile
> > @@ -58,9 +58,6 @@ KBUILD_DEFCONFIG := iss_defconfig
> >  LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
> >
> >  head-y         := arch/xtensa/kernel/head.o
> > -core-y         += arch/xtensa/kernel/ arch/xtensa/mm/
> > -core-y         += arch/xtensa/platforms/$(platform-y)/
> > -core-y                 += arch/xtensa/boot/dts/
> >
> >  libs-y         += arch/xtensa/lib/ $(LIBGCC)
> >
> > diff --git a/arch/xtensa/platforms/Makefile b/arch/xtensa/platforms/Makefile
> > new file mode 100644
> > index 000000000000..e2e7e0726979
> > --- /dev/null
> > +++ b/arch/xtensa/platforms/Makefile
> > @@ -0,0 +1,4 @@
> > +# SPDX-License-Identifier: GPL-2.0-only
> > +obj-$(CONFIG_XTENSA_PLATFORM_XT2000)   += xt2000/
> > +obj-$(CONFIG_XTENSA_PLATFORM_ISS)      += iss/
> > +obj-$(CONFIG_XTENSA_PLATFORM_XTFPGA)   += xtfpga/
>
> With this change platform directory names are duplicated in two
> makefiles. Can we move them to Kconfig with something like the
> following (on top of this change)?



I do not like the idea much for the following reasons.



 - The string value in Kconfig is enclosed by double-quotes.

   In the .config file,

      CONFIG_XTENSA_PLATFORM="iss"


   So, you are doing

        obj-y  += "iss"/

   instead of

        obj-y  += iss/


   Still, it seems working because the shell will eventually
   get rid of double quotes, but that is not correct
   from the Kbuild perspective.

   You need to write like this:

       obj-y += $(patsubst "%",%,$(CONFIG_XTENSA_PLATFORM))


- 'make clean' does not include any CONFIG option.

   So,

   obj-y += $(CONFIG_XTENSA_PLATFORM)/

      will expand into:

   obj-y += /


   Luckily, Kbuild will ignore it.
   Kbuild will not try to clean the root directory, but this code
      scares me.

 - Kbuild cannot know the sub-directories of arch/xtensa/platforms/.
   So, you need to list the subdirectories anyway so 'make clean'
   can visit all the sub-directories.

   arch/xtensa/platforms/Makefile

      # for 'make clean'
      obj-  += iss/ xt2000/ xtfpga/






> ---8<---
> diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig
> index b843902ad9fd..fe5ae5ec71c9 100644
> --- a/arch/xtensa/Kconfig
> +++ b/arch/xtensa/Kconfig
> @@ -314,6 +314,12 @@ config PLATFORM_HAVE_XIP
>
> menu "Platform options"
>
> +config XTENSA_PLATFORM
> +       string
> +       default iss if XTENSA_PLATFORM_ISS
> +       default xt2000 if XTENSA_PLATFORM_XT2000
> +       default xtfpga if XTENSA_PLATFORM_XTFPGA
> +
> choice
>        prompt "Xtensa System Type"
>        default XTENSA_PLATFORM_ISS
> diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
> index 96714ef7c89e..6b104ecdd19e 100644
> --- a/arch/xtensa/Makefile
> +++ b/arch/xtensa/Makefile
> @@ -26,12 +26,6 @@ ifneq ($(VARIANT),)
>   endif
> endif
>
> -# Platform configuration
> -
> -platform-$(CONFIG_XTENSA_PLATFORM_XT2000)      := xt2000
> -platform-$(CONFIG_XTENSA_PLATFORM_ISS)         := iss
> -platform-$(CONFIG_XTENSA_PLATFORM_XTFPGA)      := xtfpga
> -
> # temporarily until string.h is fixed
> KBUILD_CFLAGS += -ffreestanding -D__linux__
> KBUILD_CFLAGS += -pipe -mlongcalls -mtext-section-literals
> @@ -47,7 +41,7 @@ endif
> CHECKFLAGS += -D$(if $(CONFIG_CPU_BIG_ENDIAN),__XTENSA_EB__,__XTENSA_EL__)
>
> vardirs := $(patsubst %,arch/xtensa/variants/%/,$(variant-y))
> -plfdirs := $(patsubst %,arch/xtensa/platforms/%/,$(platform-y))
> +plfdirs := $(patsubst %,arch/xtensa/platforms/%/,$(CONFIG_XTENSA_PLATFORM))
>
> KBUILD_CPPFLAGS += $(patsubst %,-I$(srctree)/%include,$(vardirs) $(plfdirs))
>
> diff --git a/arch/xtensa/platforms/Makefile b/arch/xtensa/platforms/Makefile
> index e2e7e0726979..08d0e9053db6 100644
> --- a/arch/xtensa/platforms/Makefile
> +++ b/arch/xtensa/platforms/Makefile
> @@ -1,4 +1,2 @@
> # SPDX-License-Identifier: GPL-2.0-only
> -obj-$(CONFIG_XTENSA_PLATFORM_XT2000)   += xt2000/
> -obj-$(CONFIG_XTENSA_PLATFORM_ISS)      += iss/
> -obj-$(CONFIG_XTENSA_PLATFORM_XTFPGA)   += xtfpga/
> +obj-y += $(CONFIG_XTENSA_PLATFORM)/
>
> ---8<---
>
> --
> Thanks.
> -- Max



-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 4/4] xtensa: move core-y in arch/xtensa/Makefile to arch/xtensa/Kbuild
  2021-08-13  7:09     ` Masahiro Yamada
@ 2021-08-13  7:51       ` Max Filippov
  0 siblings, 0 replies; 10+ messages in thread
From: Max Filippov @ 2021-08-13  7:51 UTC (permalink / raw)
  To: Masahiro Yamada
  Cc: Chris Zankel, open list:TENSILICA XTENSA PORT (xtensa), LKML

On Fri, Aug 13, 2021 at 12:10 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> On Fri, Aug 13, 2021 at 2:32 PM Max Filippov <jcmvbkbc@gmail.com> wrote:
> >
> > On Wed, Aug 11, 2021 at 9:38 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
> > >
> > > Use obj-y to clean up Makefile.
> > >
> > > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > > ---
> > >
> > >  arch/xtensa/Kbuild             | 1 +
> > >  arch/xtensa/Makefile           | 3 ---
> > >  arch/xtensa/platforms/Makefile | 4 ++++
> > >  3 files changed, 5 insertions(+), 3 deletions(-)
> > >  create mode 100644 arch/xtensa/platforms/Makefile
> > >
> > > diff --git a/arch/xtensa/Kbuild b/arch/xtensa/Kbuild
> > > index a4e40e534e6a..fd12f61745ba 100644
> > > --- a/arch/xtensa/Kbuild
> > > +++ b/arch/xtensa/Kbuild
> > > @@ -1 +1,2 @@
> > >  # SPDX-License-Identifier: GPL-2.0-only
> > > +obj-y += kernel/ mm/ platforms/ boot/dts/
> > > diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile
> > > index 093e87b889be..96714ef7c89e 100644
> > > --- a/arch/xtensa/Makefile
> > > +++ b/arch/xtensa/Makefile
> > > @@ -58,9 +58,6 @@ KBUILD_DEFCONFIG := iss_defconfig
> > >  LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
> > >
> > >  head-y         := arch/xtensa/kernel/head.o
> > > -core-y         += arch/xtensa/kernel/ arch/xtensa/mm/
> > > -core-y         += arch/xtensa/platforms/$(platform-y)/
> > > -core-y                 += arch/xtensa/boot/dts/
> > >
> > >  libs-y         += arch/xtensa/lib/ $(LIBGCC)
> > >
> > > diff --git a/arch/xtensa/platforms/Makefile b/arch/xtensa/platforms/Makefile
> > > new file mode 100644
> > > index 000000000000..e2e7e0726979
> > > --- /dev/null
> > > +++ b/arch/xtensa/platforms/Makefile
> > > @@ -0,0 +1,4 @@
> > > +# SPDX-License-Identifier: GPL-2.0-only
> > > +obj-$(CONFIG_XTENSA_PLATFORM_XT2000)   += xt2000/
> > > +obj-$(CONFIG_XTENSA_PLATFORM_ISS)      += iss/
> > > +obj-$(CONFIG_XTENSA_PLATFORM_XTFPGA)   += xtfpga/
> >
> > With this change platform directory names are duplicated in two
> > makefiles. Can we move them to Kconfig with something like the
> > following (on top of this change)?
>
> I do not like the idea much for the following reasons.

Ok, thanks for the explanation. Applied the original patch to my xtensa tree.

-- 
Thanks.
-- Max

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2021-08-13  7:52 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-11 16:37 [PATCH 1/4] xtensa: remove unneeded exports Masahiro Yamada
2021-08-11 16:37 ` [PATCH 2/4] xtensa: do not build variants directory Masahiro Yamada
2021-08-13  5:36   ` Max Filippov
2021-08-11 16:37 ` [PATCH 3/4] xtensa: build platform directories unconditionally Masahiro Yamada
2021-08-13  5:37   ` Max Filippov
2021-08-11 16:37 ` [PATCH 4/4] xtensa: move core-y in arch/xtensa/Makefile to arch/xtensa/Kbuild Masahiro Yamada
2021-08-13  5:32   ` Max Filippov
2021-08-13  7:09     ` Masahiro Yamada
2021-08-13  7:51       ` Max Filippov
2021-08-13  5:35 ` [PATCH 1/4] xtensa: remove unneeded exports Max Filippov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).